Thursday, October 23, 2014

FreeBSD 10 - ZFS, DTrace welcome back

For our internal testing and product development at SDR Dynamics, we are using FreeBSD 10. And DTrace is there along with ZFS, works out of the box, nothing to add or recompile. Nice thing to have these ported to BSD world from Solaris.

I did a quick update of my laptop, Asus Zenbook UX32VD, to latest FreeBSD current, 11 version, very curious to play around with dtrace.

root@nereid:~ # uname -a
FreeBSD nereid 11.0-CURRENT FreeBSD 11.0-CURRENT #0 r265628: Thu May  8 05:26:05 UTC 2014     root@grind.freebsd.org:/usr/obj/usr/src/sys/GENERIC  amd64

 

List all probes:

root@nereid:~ # dtrace -l | wc -l
   56748

Syscalls by application name:

root@nereid:~ #  dtrace -n 'syscall:::entry { @[execname] = count(); }'
dtrace: description 'syscall:::entry ' matched 1072 probes
^C
  wpa_supplicant                                                    1
  gvfsd-trash                                                       3
  syslogd                                                           3
  xfsettingsd                                                       4
  sendmail                                                          6
  xfce4-session                                                    20
  xscreensaver                                                     24
  xfce4-panel                                                      44
  powerd                                                           46
  xfdesktop                                                        52
  dtrace                                                          127
  ftp                                                             174
  wrapper                                                         355
  firefox                                                         364
  xfwm4                                                          1571
  xfce4-terminal                                                 3800
  Xorg                                                          21548


Top Calls

root@nereid:~ # dtrace -n 'syscall:::entry { @[probefunc] = count(); }'
dtrace: description 'syscall:::entry ' matched 1072 probes
^C
  getpid                                                            1
  access                                                            2
  sigreturn                                                         2
  posix_fadvise                                                     3
  fcntl                                                             4
  fstat                                                             4
  getfsstat                                                         4
  sigaction                                                         6
  nanosleep                                                        12
  mmap                                                             27
  __sysctl                                                         32
  munmap                                                           33
  open                                                             60
  _umtx_op                                                         67
  write                                                           351
  select                                                          546
  readv                                                           596
  kevent                                                          699
  writev                                                          716
  setitimer                                                       966
  lseek                                                          1513
  poll                                                           1528
  sigprocmask                                                    1586
  recvmsg                                                        2044
  read                                                           2529
  ioctl                                                         24473

Looks good and nice. Start drilling :)

No comments:

Post a Comment