24 tracer_.pushScope(subsystem, operation);
54#ifdef CONTUR_TRACE_ENABLED
55#define CONTUR_TRACE_SCOPE(tracer, subsystem, operation) \
56 ::contur::TraceScope contur_trace_scope_##__LINE__((tracer), (subsystem), (operation))
57#define CONTUR_TRACE_BLOCK(code) \
62#define CONTUR_TRACE_L(tracer, level, subsystem, operation, details) \
64 ::contur::makeTraceEvent( \
65 (tracer).clock().now(), (subsystem), (operation), (details), (tracer).currentDepth(), (level) \
68#define CONTUR_TRACE(tracer, subsystem, operation, details) \
69 CONTUR_TRACE_L((tracer), ::contur::TraceLevel::Info, (subsystem), (operation), (details))
71#define CONTUR_TRACE_SCOPE(tracer, subsystem, operation) ((void)0)
72#define CONTUR_TRACE_BLOCK(code) ((void)0)
73#define CONTUR_TRACE_L(tracer, level, subsystem, operation, details) ((void)0)
74#define CONTUR_TRACE(tracer, subsystem, operation, details) ((void)0)
Tracer interface used by kernel subsystems.
TraceScope & operator=(const TraceScope &)=delete
Copy assignment is disabled.
TraceScope(ITracer &tracer, std::string_view subsystem, std::string_view operation)
Constructs a nested tracing scope.
~TraceScope()
Destroys scope and pops nesting level.
TraceScope(TraceScope &&)=delete
Move construction is disabled.
TraceScope(const TraceScope &)=delete
Copy construction is disabled.
TraceScope & operator=(TraceScope &&)=delete
Move assignment is disabled.
Tracer interface for hierarchical event tracing.