Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
LTTNG-GEN-TP(1) 		  LTTng Manual			 LTTNG-GEN-TP(1)

NAME
     lttng-gen-tp - Generate LTTng-UST tracepoint provider code

SYNOPSIS
     lttng-gen-tp [--verbose] [--output=FILE.c]
		  [--output=FILE.h] [--output=FILE.o] TEMPLATE

DESCRIPTION
     The  lttng-gen-tp	tool  simplifies  the generation of LTTng-UST tracepoint
     provider files. It takes a simple template file,  TEMPLATE,  and  generates
     the  necessary  C	code to use the defined tracepoints in your application.
     See the Template file format section below for more information  about  the
     format of TEMPLATE.

     Currently,  lttng-gen-tp  can  generate the .h, .c, and .o files associated
     with your tracepoint provider. The generated .h file can  be  included  di-
     rectly  in  your application. You can let lttng-gen-tp generate the .o file
     or compile the .c file yourself.  See  lttng-ust(3)  for  more  information
     about compiling LTTng-UST tracepoint providers.

     By default, lttng-gen-tp generates the .h, .c, and .o files, their basename
     being  the basename of TEMPLATE. You can generate one or more specific file
     types with the --output option, repeated if needed.

   Template file format
     The template file, which usually has the .tp extension, contains a list  of
     LTTNG_UST_TRACEPOINT_EVENT()  definitions and other optional definition en-
     tries, like LTTNG_UST_TRACEPOINT_LOGLEVEL(). See lttng-ust(3) for the  com-
     plete list of available definitions.

     The LTTNG_UST_TRACEPOINT_EVENT() definitions are written as you would write
     them  in  an  LTTng-UST  template provider header file. C comments are sup-
     ported (/* */ and //), as well as lines starting with #.

	 Note

	 The provider name (the first argument of  LTTNG_UST_TRACEPOINT_EVENT())
	 must be the same in all the LTTNG_UST_TRACEPOINT_EVENT() macros of TEM-
	 PLATE.

     Here's an example:

	 LTTNG_UST_TRACEPOINT_EVENT(
	     // Tracepoint provider name
	     my_provider,

	     // Tracepoint/event name
	     my_event,

	     // Tracepoint arguments (input)
	     LTTNG_UST_TP_ARGS(char *, text),

	     // Tracepoint/event fields (output)
	     LTTNG_UST_TP_FIELDS(
		 lttng_ust_field_string(message, text)
	     )
	 )

OPTIONS
     -o, --output=FILE
	 Do not generate default files: generate FILE.

	 The extension of FILE determines what is generated, amongst .h, .c, and
	 .o.  This  option  can be used more than one time to generate different
	 file types.

     -v, --verbose
	 Increase verbosity.

     -h, --help
	 Show command help.

ENVIRONMENT VARIABLES
     CC
	 C compiler to use. Default: cc, then gcc if cc is not found.  This  op-
	 tion is only relevant when generating the .o file.

     CFLAGS
	 Flags and options passed directly to the compiler ($CC). This option is
	 only relevant when generating the .o file.

EXIT STATUS
     0
	 Success

     Non-zero
	 Error

BUGS
     If  you  encounter  any issue or usability problem, please report it on the
     LTTng bug tracker <https://bugs.lttng.org/projects/lttng-ust>.

RESOURCES
     *	 LTTng project website <http://lttng.org>

     *	 LTTng documentation <http://lttng.org/docs>

     *	 Git repositories <http://git.lttng.org>

     *	 GitHub organization <http://github.com/lttng>

     *	 Continuous integration <http://ci.lttng.org/>

     *	 Mailing list <http://lists.lttng.org> for support and development:  lt-
	 tng-dev@lists.lttng.org

     *	 IRC channel <irc://irc.oftc.net/lttng>: #lttng on irc.oftc.net

COPYRIGHTS
     lttng-gen-tp is part of the LTTng-UST project.

     lttng-gen-tp is distributed under the GNU General Public License, version 2
     <http://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html>. See the COPYING
     <https://github.com/lttng/lttng-ust/blob/v2.13/COPYING>  file  for more de-
     tails.

AUTHOR
     lttng-gen-tp  was	originally  written  by  Yannick  Brosseau  <mailto:yan-
     nick.brosseau@gmail.com>.	It  is currently maintained by Mathieu Desnoyers
     <mailto:mathieu.desnoyers@efficios.com>.

SEE ALSO
     lttng-ust(3)

LTTng 2.13.9			   04/14/2025			 LTTNG-GEN-TP(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=lttng-gen-tp&sektion=1&manpath=FreeBSD+Ports+15.1.quarterly>

home | help