Hi Brendan, really looking forward to the book. Very thoughtful to cover non-Solaris OS as well. As you suggested I browsed chapter 5 and tried a couple of scripts. But nothing resolves my vmdk filenames. I tried several providers syscall, fsinfo and nfsv3 and all give <unknown> as filename when I do i/o on the disk. What puzzles me is that the virtual machine lockfile filename is resolved. It appears that just the vmdk files cannot be resolved. The very little amount of i/o corresponds to the small cat and cp commands I used on the virtual machine. Why can't any provider each on a different layer revolve that filename?
Thanks, Frederik root@snv1# dtrace -n 'syscall::read:entry { @[fds[arg0].fi_pathname] = count(); }' dtrace: description 'syscall::read:entry ' matched 1 probe ^C /devices/pseudo/clone@0:ptm 2 /etc/resolv.conf 2 <unknown> 9 root@snv1# dtrace -n 'fsinfo:::read { @[args[0]->fi_pathname] = sum(arg1); }' dtrace: description 'fsinfo:::read ' matched 1 probe ^C /var/adm/wtmpx 4 /etc/resolv.conf 350 <unknown> 1447 /etc/default/nfs 3682 /etc/inet/services 5398 root@snv1# ./nfsv3fileio.dtrace Tracing... Hit Ctrl-C to end. ^C Rbytes Wbytes Pathname 0 168 /mpool/running_vm/vm-frontend/.lck-8b00000000000000 0 168 /mpool/running_vm/vm-installer46/.lck-2701000000000000 81920 1340 <unknown> root@snv1# cat nfsv3fileio.dtrace #!/usr/sbin/dtrace -s #pragma D option quiet dtrace:::BEGIN { trace("Tracing... Hit Ctrl-C to end.\n"); } nfsv3:::op-read-done { @readbytes[args[1]->noi_curpath] = sum(args[2]->res_u.ok.data.data_len); } nfsv3:::op-write-done { @writebytes[args[1]->noi_curpath] = sum(args[2]->res_u.ok.count); } dtrace:::END { printf("\n%12s %12s %s\n", "Rbytes", "Wbytes", "Pathname"); printa("%@12d %@12d %s\n", @readbytes, @writebytes); } _______________________________________________ dtrace-discuss mailing list dtrace-discuss@opensolaris.org