table of contents
LTTNG-GEN-TP(1) | LTTng Manual | LTTNG-GEN-TP(1) |
NAME¶
lttng-gen-tp - Generate LTTng-UST tracepoint provider codeSYNOPSIS¶
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 directly 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 TRACEPOINT_EVENT() definitions and other optional definition entries, like TRACEPOINT_LOGLEVEL(). See lttng-ust(3) for the complete list of available definitions.The TRACEPOINT_EVENT() definitions are written as you would write them in an LTTng-UST template provider header file. C comments are supported (/* */ and //), as well as lines starting with #.
Note
The provider name (the first argument of TRACEPOINT_EVENT()) must be the same in all the TRACEPOINT_EVENT() macros of TEMPLATE.
Here’s an example:
TRACEPOINT_EVENT( // Tracepoint provider name my_provider, // Tracepoint/event name my_event, // Tracepoint arguments (input) TP_ARGS(char *, text), // Tracepoint/event fields (output) TP_FIELDS( ctf_string(message, text) ) )
OPTIONS¶
-o, --output=FILEThe 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
-h, --help
ENVIRONMENT VARIABLES¶
CCCFLAGS
EXIT STATUS¶
0Non-zero
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¶
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/master/COPYING> file for more details.
AUTHOR¶
lttng-gen-tp was originally written by Yannick Brosseau <mailto:yannick.brosseau@gmail.com>. It is currently maintained by Mathieu Desnoyers <mailto:mathieu.desnoyers@efficios.com>.SEE ALSO¶
lttng-ust(3)01/25/2019 | LTTng 2.10.3 |