NAME | DESCRIPTION | INITIALIZATION PARAMETERS | PORTS | QUERY OBJECTS | ENVIRONMENT VARIABLES | BUGS | RESOURCES | AUTHORS | COPYRIGHT | SEE ALSO | COLOPHON

BABELTRACE-SOURCE(7)          Babeltrace manual         BABELTRACE-SOURCE(7)

NAME         top

       babeltrace-source.ctf.fs - Babeltrace's file system CTF source
       component class

DESCRIPTION         top

       The Babeltrace source.ctf.fs component class, provided by the
       babeltrace-plugin-ctf(7) plugin, once instantiated, opens one or more
       CTF (see <http://diamon.org/ctf/>) traces on the file system and
       emits the notifications of their data streams on its output ports.

   Operation
       A source.ctf.fs component recurses the directory given by the path
       parameter to find CTF traces. Note that, since a CTF trace directory
       cannot contain another CTF trace, if you need to open a single trace,
       set the path parameter to a directory which directly contains the
       metadata file.

       For each trace, the component creates one output port per effective
       data stream. Multiple data stream files can constitute a single
       effective data stream. The name of a data stream output port is the
       absolute path to the corresponding data stream file, or to one of the
       corresponding data stream files if there’s more than one.

       The component skips the following files when looking for data stream
       files:

       ·   Any file which starts with ., including subdirectories.

       ·   Any non-regular file.

   Trace naming
       A source.ctf.fs component names each trace [HOSTNAME/]PATH, with:

       HOSTNAME
           Value of the trace’s hostname environment constant. If this
           environment constant does not exist, or if its value is not a
           string, then this part is omitted.

       PATH
           Relative path to the trace, starting at and including the
           basename of the path parameter. This path is normalized, that is,
           it doesn’t contain path elements named ..  or ..

       For example, assume the following hierarchy:

           /
             home/
               user/
                 my-traces/
                   trace1/
                     metadata
                     ...
                   node-traces/
                     server/
                       metadata
                       ...
                     client/
                       metadata
                       ...

       If you set the path parameter to /home/user/my-traces, and assuming
       the hostname of the trace1 and server traces is machine, and the
       hostname of the client trace is embedded, then the trace names are:

       ·   machine/my-traces/trace1

       ·   machine/my-traces/node-traces/server

       ·   embedded/my-traces/node-traces/client

   Metadata quirks
       A source.ctf.fs component makes some efforts to support as many CTF
       traces as possible, even those of which the metadata is malformed or
       implements specification bugs.

       In particular:

       ·   If the component detects that the trace was produced by LTTng, it
           sets the monotonic clock class as absolute so that different
           LTTng traces are directly correlatable. An LTTng trace has its
           tracer_name environment constant starting with lttng.

       ·   If the timestamp_begin or timestamp_end packet context field type
           exists, but it is not mapped to a clock class, and there’s only
           one clock class at this point in the metadata stream, the
           component maps it to this unique clock class.

       ·   If an enumeration field type’s label starts with _, the component
           removes the starting _ character. This is needed to accomodate an
           eventual variant field type which refers to the enumeration field
           type as its tag and which has equivalent choice names also
           starting with _ (the _ must be removed from field and choice
           names as per CTF 1.8.2).

INITIALIZATION PARAMETERS         top

       The following parameters are optional unless indicated otherwise.

       clock-class-offset-ns (integer)
           Value to add, in nanoseconds, to the offset of all the clock
           classes that the component creates.

           You can combine this parameter with the clock-class-offset-s
           parameter.

       clock-class-offset-s (integer)
           Value to add, in seconds, to the offset of all the clock classes
           that the component creates.

           You can combine this parameter with the clock-class-offset-ns
           parameter.

       path=PATH (string, mandatory)
           Path to the directory to recurse for CTF traces.

PORTS         top

   Output
       For each opened trace, the component creates one output port for each
       effective data stream. The name of a data stream output port is the
       normalized (no .. or . elements) absolute path to the corresponding
       data stream file, or to one of the corresponding data stream files if
       there’s more than one.

QUERY OBJECTS         top

   metadata-info
       You can query the metadata-info object for a specific CTF trace to
       get its plain text metadata stream as well as whether or not it is
       packetized.

       Parameters:

       path (string, mandatory)
           Path to the CTF trace directory which contains the metadata file.

       Returned object (map):

       text (string)
           Plain text metadata.

       is-packetized (boolean)
           True if the metadata stream is packetized.

   trace-info
       You can query the trace-info object for a set of CTF traces to get
       information about the data streams they contain, their intersection
       time range, and more.

       This query object requires that the processed CTF traces have the
       timestamp_begin and timestamp_end fields in their packet context
       field types.

       Parameters:

       path (string, mandatory)
           Path to a directory to recurse to find CTF traces.

       Returned object (array of maps, one element for each found trace):

       name (string)
           Trace name, as per the explanations in the Trace naming section.

       path (string)
           Trace path.

       range-ns (map)
           Full time range of the trace.

           begin (integer)
               Beginning time (ns since Epoch) of the trace.

           end (integer)
               End time (ns since Epoch) of the trace.

       intersection-range-ns (map)
           This entry only exists if there is a data stream intersection
           range.

           begin (integer)
               Beginning time (ns since Epoch) of the trace’s data stream
               intersection.

           end (integer)
               End time (ns since Epoch) of the trace’s data stream
               intersection.

       streams (array of maps, one element for each trace’s effective data
       stream)

           paths (array of strings)
               Absolute paths to the data stream files which are part of
               this data stream.

           class-id (integer)
               Numeric ID of the data stream’s class.

           range-ns (map)
               Full time range of the data stream.

               begin (integer)
                   Beginning time (ns since Epoch) of the data stream.

               end (integer)
                   End time (ns since Epoch) of the data stream.

ENVIRONMENT VARIABLES         top

   ctf plugin
       BABELTRACE_PLUGIN_CTF_BTR_LOG_LEVEL
           Binary type reader’s log level. The available values are the same
           as for the --log-level option of babeltrace(1).

       BABELTRACE_PLUGIN_CTF_METADATA_LOG_LEVEL
           Metadata decoder’s log level. The available values are the same
           as for the --log-level option of babeltrace(1).

       BABELTRACE_PLUGIN_CTF_NOTIF_ITER_LOG_LEVEL
           Notification iterator’s log level. The available values are the
           same as for the --log-level option of babeltrace(1).

   Component class
       BABELTRACE_COMMON_LOG_LEVEL
           Common functions’s log level. The available values are the same
           as for the --log-level option of babeltrace(1).

       BABELTRACE_COMPAT_LOG_LEVEL
           Compatibility functions’s log level. The available values are the
           same as for the --log-level option of babeltrace(1).

       BABELTRACE_TERM_COLOR
           Force the terminal color support. The available values are:

           AUTO
               Only emit terminal color codes when the standard output and
               error streams are connected to a color-capable terminal.

           NEVER
               Never emit terminal color codes.

           ALWAYS
               Always emit terminal color codes.

       BABELTRACE_SRC_CTF_FS_LOG_LEVEL
           Component class’s log level. The available values are the same as
           for the --log-level option of babeltrace(1).

BUGS         top

       If you encounter any issue or usability problem, please report it on
       the Babeltrace bug tracker (see
       <https://bugs.linuxfoundation.org/buglist.cgi?product=Diamon&component=Babeltrace>).

RESOURCES         top

       The Babeltrace project shares some communication channels with the
       LTTng project (see <http://lttng.org/>).

       ·   Babeltrace website (see <http://diamon.org/babeltrace>)

       ·   Git repository (see
           <http://git.linuxfoundation.org/?p=diamon/babeltrace.git>)

       ·   EfficiOS GitHub organization (see <http://github.com/efficios/>)

       ·   Continuous integration (see
           <https://ci.lttng.org/job/babeltrace_master_build/>)

       ·   Mailing list (see <http://lists.lttng.org>) for support and
           development: lttng-dev@lists.lttng.org

       ·   IRC channel (see <irc://irc.oftc.net/lttng>): #lttng on
           irc.oftc.net

AUTHORS         top

       The Babeltrace project is the result of efforts by many regular
       developers and occasional contributors.

       The current project maintainer is Jérémie Galarneau
       <mailto:jeremie.galarneau@efficios.com>.

COPYRIGHT         top

       This component class is part of the Babeltrace project.

       Babeltrace is distributed under the MIT license (see
       <https://opensource.org/licenses/MIT>).

SEE ALSO         top

       babeltrace-plugin-ctf(7), babeltrace-intro(7)

COLOPHON         top

       This page is part of the babeltrace (trace read and write libraries
       and a trace converter) project.  Information about the project can be
       found at ⟨http://www.efficios.com/babeltrace⟩.  If you have a bug
       report for this manual page, send it to lttng-dev@lists.lttng.org.
       This page was obtained from the project's upstream Git repository
       ⟨git://git.efficios.com/babeltrace.git⟩ on 2018-10-29.  (At that
       time, the date of the most recent commit that was found in the repos‐
       itory was 2018-09-12.)  If you discover any rendering problems in
       this HTML version of the page, or you believe there is a better or
       more up-to-date source for the page, or you have corrections or
       improvements to the information in this COLOPHON (which is not part
       of the original manual page), send a mail to man-pages@man7.org

Babeltrace 2.0.0-pre4          5 October 2017           BABELTRACE-SOURCE(7)

Pages that refer to this page: babeltrace(1)babeltrace-convert(1)babeltrace-plugin-ctf(7)