Thanks Adam - I've already started down this path.

Jim

> Hey Jim,
> 
> I don't have any ideas off the top of my head, but
> you can certainly use DTrace to figure out what's
> giving java the order to continue...
> 
> Adam
> 
> On Aug 13, 2010, at 6:45 AM, Jim Fiori wrote:
> 
> > Hi,
> > 
> > I'm using the rexit/stop()/prun() dance to capture
> process exit in order to grab various procfs commands
> on exit. Works fine for simple program like "sleep".
> But for Java (and other threaded customer apps) it
> runs one or 2 of the p-commands, but the process goes
> away before I can get all I want:
> > 
> > $ cat exit.d
> > #!/usr/sbin/dtrace -qws
> > 
> > syscall::rexit:entry
> > /execname == "sleep" || execname == "java"/
> > {
> >        stop();
> >        system("pargs %d",pid);
> >        system ("pldd %d",pid);
> >        system ("pfiles %d",pid);
> >        system ("pstack %d",pid);
> > 
> >        system ("prun %d",pid);
> > }
> > 
> > $ ./exit.d&
> > [1] 22487
> > 
> > OK, now test a "sleep" exit:
> > 
> > bash-3.00$ sleep 5
> > 22488:  sleep 5
> > argv[0]: sleep
> > argv[1]: 5
> > 22488:  sleep 5
> > /lib/libc.so.1
> >
> /usr/lib/locale/en_US.ISO8859-1/en_US.ISO8859-1.so.3
> > 22488:  sleep 5
> >  Current rlimit: 256 file descriptors
> >   0: S_IFCHR mode:0620 dev:287,0 ino:12582952
> uid:5667 gid:7 rdev:24,18
> >      O_RDWR
> >      /devices/pseudo/p...@0:18
> >   1: S_IFCHR mode:0620 dev:287,0 ino:12582952
> uid:5667 gid:7 rdev:24,18
> >      O_RDWR
> >      /devices/pseudo/p...@0:18
> >   2: S_IFCHR mode:0620 dev:287,0 ino:12582952
> uid:5667 gid:7 rdev:24,18
> >      O_RDWR
> >      /devices/pseudo/p...@0:18
> > 22488:  sleep 5
> > feea4d18 ecvt     (2, 8047290, 8047296, 0, 8047298,
> 8047306)
> > 
> > Looks like all the p-commands completed. But for
> java:
> > 
> > 0$ /usr/java/bin/java -version
> > java version "1.5.0_20"
> > Java(TM) 2 Runtime Environment, Standard Edition
> (build 1.5.0_20-b02)
> > Java HotSpot(TM) Client VM (build 1.5.0_20-b02,
> mixed mode, sharing)
> > 22513:  /usr/java/bin/java -version
> > argv[0]: /usr/java/bin/java
> > argv[1]: -version
> > 22513:  /usr/java/bin/java -version
> > /lib/libthread.so.1
> > /lib/libdl.so.1
> > /lib/libc.so.1
> >
> /usr/jdk/instances/jdk1.5.0/jre/lib/i386/client/libjvm
> .so
> > /lib/libsocket.so.1
> > /usr/lib/libsched.so.1
> > /usr/lib/libCrun.so.1
> > /lib/libm.so.1
> > /lib/libnsl.so.1
> > /lib/libm.so.2
> > /lib/libscf.so.1
> > /lib/libdoor.so.1
> > /lib/libuutil.so.1
> > /lib/libgen.so.1
> > /lib/libmd.so.1
> > /lib/libmp.so.2
> >
> /usr/jdk/instances/jdk1.5.0/jre/lib/i386/native_thread
> s/libhpi.so
> >
> /usr/jdk/instances/jdk1.5.0/jre/lib/i386/libverify.so
> > /usr/jdk/instances/jdk1.5.0/jre/lib/i386/libjava.so
> > /usr/jdk/instances/jdk1.5.0/jre/lib/i386/libzip.so
> >
> /usr/lib/locale/en_US.ISO8859-1/en_US.ISO8859-1.so.3
> > bash-3.00$ pfiles: cannot examine 22513: no such
> process
> > pstack: cannot examine 22513: no such process or
> core file
> > prun: cannot control 22513: no such process
> > 
> > 
> > Any ideas? Something is telling the process to
> continue.
> > 
> > Jim
> > -- 
> > This message posted from opensolaris.org
> > _______________________________________________
> > dtrace-discuss mailing list
> > dtrace-discuss@opensolaris.org
> 
> 
> --
> Adam Leventhal, Fishworks
>                        http://blogs.sun.com/ahl
> _________________________
> dtrace-discuss mailing list
> dtrace-discuss@opensolaris.org
>
-- 
This message posted from opensolaris.org
_______________________________________________
dtrace-discuss mailing list
dtrace-discuss@opensolaris.org

Reply via email to