Unix/Linux Go Back    


CentOS 7.0 - man page for dtrace (centos section 1)

Linux & Unix Commands - Search Man Pages
Man Page or Keyword Search:   man
Select Man Page Set:       apropos Keyword Search (sections above)


DTRACE(1)										DTRACE(1)

NAME
       dtrace - Dtrace compatibile user application static probe generation tool.

SYNOPSIS
       dtrace -s file [OPTIONS]

DESCRIPTION
       The  dtrace command converts probe descriptions defined in file.d into a probe header file
       via the -h option or a probe description file via the -G option.

OPTIONS
       -h     generate a systemtap header file.

       -G     generate a systemtap probe definition object file.

       -o file
	      is the name of the output file.  If the -G option is given  then	the  output  file
	      will  be	called	file.o;  if  the  -h option is given then the output file will be
	      called file.h.

       -C     run the cpp preprocessor on the input file when the -h option is given.

       -I file
	      give this include path to cpp when the -C option is given.

       -k     keep temporary files, for example the C language source for the -G option.

       --types
	      generate probe argument typedef information when the -h option is given.

EXAMPLES
       Systemtap is source compatible with dtrace user application static probe support.  Given a
       file test.d containing:

	      provider sdt_probes
	      {
		probe test_0 (int type);
		probe test_1 (struct astruct node);
	      };
	      struct astruct {int a; int b;};

       Then  the  command  "dtrace -s test.d -G" will create the probe definition file test.o and
       the command "dtrace -stest.d -h" will create the probe header file test.h Subsequently the
       application can use the generated macros this way:

	      #include "test.h"
	       ...
	      struct astruct s;
	       ...
	      SDT_PROBES_TEST_0(value);
	       ...
	      if (SDT_PROBES_TEST_1_ENABLED())
		  SDT_PROBES_TEST_1(expensive_function(s));

SEMAPHORES
       Semaphores are flag variables used by probes as a way of bypassing potentially costly pro-
       cessing to prepare arguments for probes that may not even be active.  They  are	automati-
       cally  set/cleared  by  systemtap when a relevant script is running, so the argument setup
       cost is only paid when necessary.  These semaphore variables are defined  within  the  the
       "test.o" object file, which must therefore be linked into an application.

       Sometimes,  semaphore  variables are not necessary nor helpful.	Skipping them can simplfy
       the build process, by omitting the extra "test.o" file.	To skip dependence upon semaphore
       variables, include "<sys/sdt.h>" within the application before "test.h":

	      #include <sys/sdt.h>
	      #include "test.h"
	       ...
	      struct astruct s;
	       ...
	      SDT_PROBES_TEST_0(value);
	       ...
	      if (SDT_PROBES_TEST_1_ENABLED())
		 SDT_PROBES_TEST_1(cheap_function(s));

       In this mode, the ENABLED() test is fixed at 1.

SEE ALSO
       stap(1),
       stappaths(7)

											DTRACE(1)
Unix & Linux Commands & Man Pages : ©2000 - 2018 Unix and Linux Forums


All times are GMT -4. The time now is 04:19 AM.