X-TraceC++Library
Data Structures | Functions
xtr Namespace Reference

High-level API for maintaining a global X-Trace context and reporting events with logging-like calls. More...

Data Structures

class  Context
 Represents an X-Trace context, which carries information about the current task and the most recent preceding event in a thread. More...
class  EventEdge
 Represents an edge in an X-Trace graph, i.e., a causal relationship between two events. More...
class  Event
 Represents an X-Trace Event, with enough information to generate an X-Trace report. More...
class  Id
 Represents an id as an array of bytes with a maximum length. More...
class  OpId
 Represents the id of an event, which should be unique within a single task. More...
class  TaskId
 Represents the id of an X-Trace task. More...
class  Options
 Represents the list of options in the X-Trace metadata. More...
class  Metadata
 Represents an X-Trace metadata. More...
class  Option
 Represents an X-Trace metadata option. More...
class  OptionNop
 A No-op option for X-Trace, serialized to a single '0' byte. More...
class  OptionAny
 This class can represent any option, and is used when we don't have a specific class for an option. More...
class  OptionChainId
 A ChainId X-Trace metadata option. More...
class  OptionSeverity
 A Severity X-Trace metadata option. More...
class  Reporter

Functions

void xtr_btoh (u_int8_t b, char *p)

Detailed Description

High-level API for maintaining a global X-Trace context and reporting events with logging-like calls.

A Reporter is a static class used to send reports to the reporting daemon.

Usage:

Author:
Rodrigo Fonseca
Nick Lanham (multi-thread support)

It must be initialized with the static method Reporter::init(), and then any number of reports can be sent using the static method(s) Reporter::sendReport. The reports are sent via UDP to a local socket. The port is by default XTR_RPT_UDP_PORT = 7831, but this setting is overridden if the environment variable XTR_DAEMON_PORT.


Function Documentation

void xtr::xtr_btoh ( u_int8_t  b,
char *  p 
)