jdk/src/solaris/sample/dtrace/README.txt
author duke
Wed, 05 Jul 2017 16:45:59 +0200
changeset 1810 54dffad0bf06
parent 2 90ce3da70b43
permissions -rw-r--r--
Merge
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
     1
DTrace HotSpot probes samples
90ce3da70b43 Initial load
duke
parents:
diff changeset
     2
=============================
90ce3da70b43 Initial load
duke
parents:
diff changeset
     3
90ce3da70b43 Initial load
duke
parents:
diff changeset
     4
This directory contains the list of D scripts which could be used to trace
90ce3da70b43 Initial load
duke
parents:
diff changeset
     5
Java application with help of Solaris(tm) 10 Dynamic Tracing (DTrace)
90ce3da70b43 Initial load
duke
parents:
diff changeset
     6
probes.
90ce3da70b43 Initial load
duke
parents:
diff changeset
     7
90ce3da70b43 Initial load
duke
parents:
diff changeset
     8
The directory is organized as:
90ce3da70b43 Initial load
duke
parents:
diff changeset
     9
90ce3da70b43 Initial load
duke
parents:
diff changeset
    10
* helpers/
90ce3da70b43 Initial load
duke
parents:
diff changeset
    11
90ce3da70b43 Initial load
duke
parents:
diff changeset
    12
  This directory contains the auxiliary script to launch Java application
90ce3da70b43 Initial load
duke
parents:
diff changeset
    13
  with D script to debug. See more comments in the scripts.
90ce3da70b43 Initial load
duke
parents:
diff changeset
    14
90ce3da70b43 Initial load
duke
parents:
diff changeset
    15
* hotspot/
90ce3da70b43 Initial load
duke
parents:
diff changeset
    16
  
90ce3da70b43 Initial load
duke
parents:
diff changeset
    17
  This directory contains D scripts which demonstrate usage of 'hotspot'
90ce3da70b43 Initial load
duke
parents:
diff changeset
    18
  provider probes.
90ce3da70b43 Initial load
duke
parents:
diff changeset
    19
90ce3da70b43 Initial load
duke
parents:
diff changeset
    20
90ce3da70b43 Initial load
duke
parents:
diff changeset
    21
* hotspot_jni/
90ce3da70b43 Initial load
duke
parents:
diff changeset
    22
90ce3da70b43 Initial load
duke
parents:
diff changeset
    23
  This directory contains D scripts which demonstrate usage of 'hotspot_jni'
90ce3da70b43 Initial load
duke
parents:
diff changeset
    24
  provider probes.
90ce3da70b43 Initial load
duke
parents:
diff changeset
    25
90ce3da70b43 Initial load
duke
parents:
diff changeset
    26
90ce3da70b43 Initial load
duke
parents:
diff changeset
    27
90ce3da70b43 Initial load
duke
parents:
diff changeset
    28
Requirements to run DTrace
90ce3da70b43 Initial load
duke
parents:
diff changeset
    29
==========================
90ce3da70b43 Initial load
duke
parents:
diff changeset
    30
90ce3da70b43 Initial load
duke
parents:
diff changeset
    31
1. dtrace framework should be installed; (check if /usr/sbin/dtrace exists)
90ce3da70b43 Initial load
duke
parents:
diff changeset
    32
90ce3da70b43 Initial load
duke
parents:
diff changeset
    33
2. the user should have the following rights: 
90ce3da70b43 Initial load
duke
parents:
diff changeset
    34
   dtrace_proc, dtrace_user, dtrace_kernel
90ce3da70b43 Initial load
duke
parents:
diff changeset
    35
90ce3da70b43 Initial load
duke
parents:
diff changeset
    36
    To give a user a privilege on login, insert a line into the 
90ce3da70b43 Initial load
duke
parents:
diff changeset
    37
    /etc/user_attr file of the form: 
90ce3da70b43 Initial load
duke
parents:
diff changeset
    38
    user-name::::defaultpriv=basic,dtrace_proc,dtrace_user,dtrace_kernel
90ce3da70b43 Initial load
duke
parents:
diff changeset
    39
90ce3da70b43 Initial load
duke
parents:
diff changeset
    40
    or
90ce3da70b43 Initial load
duke
parents:
diff changeset
    41
90ce3da70b43 Initial load
duke
parents:
diff changeset
    42
    To give a running process an DTrace privilege, use the ppriv(1) command:
90ce3da70b43 Initial load
duke
parents:
diff changeset
    43
    # ppriv -s A+privilege process-ID