This event has no fields.
`lttng_ust_statedump:soinfo`::
- Emitted when information about a currently loaded shared object is
- found.
+ Emitted when information about a currently loaded executable or
+ shared object is found.
+
Fields:
+
[options="header"]
-|==============================================================
+|==================================================================
| Field name | Description
-| `baddr` | Base address of loaded library
-| `memsz` | Size of loaded library in memory
-| `sopath` | Path to loaded library file
-|==============================================================
+| `baddr` | Base address of loaded executable
+| `memsz` | Size of loaded executable in memory
+| `sopath` | Path to loaded executable file
+| `is_pic` | Whether the executable is
+ position-independent code
+|==================================================================
`lttng_ust_statedump:build_id`::
Emitted when a build ID is found in a currently loaded shared
sections. The <<build-static,static linking>> method is chosen here
to link the application with the tracepoint provider.
-Let's start with the tracepoint provider header file (`tp.h`):
+You can compile the source files and link them together statically
+like this:
+
+[role="term"]
+-------------------------------------
+cc -c -I. tp.c
+cc -c app.c
+cc -o app tp.o app.o -llttng-ust -ldl
+-------------------------------------
+
+Using the man:lttng(1) tool, create an LTTng tracing session, enable
+all the events of this tracepoint provider, and start tracing:
+
+[role="term"]
+----------------------------------------------
+lttng create my-session
+lttng enable-event --userspace 'my_provider:*'
+lttng start
+----------------------------------------------
+
+You may also enable specific events:
+
+[role="term"]
+----------------------------------------------------------
+lttng enable-event --userspace my_provider:big_event
+lttng enable-event --userspace my_provider:event_instance2
+----------------------------------------------------------
+
+Run the application:
+
+[role="term"]
+--------------------
+./app some arguments
+--------------------
+
+Stop the current tracing session and inspect the recorded events:
+
+[role="term"]
+----------
+lttng stop
+lttng view
+----------
+
+
+Tracepoint provider header file
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+`tp.h`:
------------------------------------------------------------------------
#undef TRACEPOINT_PROVIDER
#include <lttng/tracepoint-event.h>
------------------------------------------------------------------------
-The tracepoint provider source file looks like this (`tp.c`):
+
+Tracepoint provider source file
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+`tp.c`:
------------------------------------------------------------------------
#define TRACEPOINT_CREATE_PROBES
#include "tp.h"
------------------------------------------------------------------------
-The included `app.h`, where the application structure resides, is:
+
+Application header file
+~~~~~~~~~~~~~~~~~~~~~~~
+`app.h`:
------------------------------------------------------------------------
#ifndef _APP_H
#endif /* _APP_H */
------------------------------------------------------------------------
-Finally, the application itself, `app.c`, using the defined tracepoints:
+
+Application source file
+~~~~~~~~~~~~~~~~~~~~~~~
+`app.c`:
------------------------------------------------------------------------
#include <stdlib.h>
}
------------------------------------------------------------------------
-Here are the steps to compile the source files and link them together
-statically:
-
-[role="term"]
--------------------------------------
-cc -c -I. tp.c
-cc -c app.c
-cc -o app tp.o app.o -llttng-ust -ldl
--------------------------------------
-
ENVIRONMENT VARIABLES
---------------------