1

I'm trying to get write size distribution by process. I ran:

sudo dtrace -n 'sysinfo:::writech { @dist[execname] = quantize(arg0); }' 

and got the following error:

dtrace: invalid probe specifier sysinfo:::writech...

This is Mac OSX. Please help.

1001b
  • 265
  • 3
  • 13

1 Answers1

0

The error message is telling you that Mac OS X doesn't support the sysinfo::: provider. Perhaps you meant to use one of these?

# dtrace -ln sysinfo::writech:
   ID   PROVIDER            MODULE                          FUNCTION NAME
dtrace: failed to match sysinfo::writech:: No probe matches description
# dtrace -ln sysinfo:::
   ID   PROVIDER            MODULE                          FUNCTION NAME
dtrace: failed to match sysinfo:::: No probe matches description
# dtrace -ln 'syscall::write*:'
   ID   PROVIDER            MODULE                          FUNCTION NAME
  147    syscall                                               write entry
  148    syscall                                               write return
  381    syscall                                              writev entry
  382    syscall                                              writev return
  933    syscall                                      write_nocancel entry
  934    syscall                                      write_nocancel return
  963    syscall                                     writev_nocancel entry
  964    syscall                                     writev_nocancel return

The following script works for me:

# dtrace -n 'syscall::write:entry {@dist[execname] = quantize(arg0)}' 
dtrace: description 'syscall::write:entry ' matched 1 probe
^C

  activitymonitor                                   
           value  ------------- Distribution ------------- count    
               2 |                                         0        
               4 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 4        
               8 |                                         0        

  Activity Monito                                   
           value  ------------- Distribution ------------- count    
               2 |                                         0        
               4 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 6        
               8 |                                         0        
... 
Dan
  • 7,155
  • 2
  • 29
  • 54
  • Thanks, Dan. Your script seems to work but I'm not getting any outputs after ^C, just a blank line. The same problem happens to my other D scripts that use quantize method. Any clues? – 1001b May 22 '13 at 03:03
  • Silly mistake. I didn't run as root. – 1001b May 22 '13 at 11:39