|
Network System 0.1.1
High-performance modular networking library for scalable client-server applications
|
RAII span implementation for distributed tracing. More...
#include "trace_context.h"#include <chrono>#include <map>#include <memory>#include <string>#include <string_view>#include <variant>#include <vector>

Go to the source code of this file.
Classes | |
| struct | kcenon::network::tracing::span_event |
| Span event (timestamped annotation) More... | |
| class | kcenon::network::tracing::span |
| RAII span for distributed tracing. More... | |
Namespaces | |
| namespace | kcenon |
| namespace | kcenon::network |
| Main namespace for all Network System components. | |
| namespace | kcenon::network::tracing |
Macros | |
| #define | NETWORK_TRACE_SPAN(name) |
| RAII helper macro for creating spans. | |
| #define | NETWORK_TRACE_CLIENT_SPAN(name) |
| RAII helper macro for creating client spans. | |
| #define | NETWORK_TRACE_SERVER_SPAN(name) |
| RAII helper macro for creating server spans. | |
Typedefs | |
| using | kcenon::network::tracing::attribute_value = std::variant<std::string, int64_t, double, bool> |
| Attribute value type (supports string, int64, double, bool) | |
Enumerations | |
| enum class | kcenon::network::tracing::span_status { kcenon::network::tracing::unset = 0 , kcenon::network::tracing::ok = 1 , kcenon::network::tracing::error = 2 } |
| Span status codes following OpenTelemetry conventions. More... | |
| enum class | kcenon::network::tracing::span_kind { kcenon::network::tracing::internal = 0 , kcenon::network::tracing::server = 1 , kcenon::network::tracing::client = 2 , kcenon::network::tracing::producer = 3 , kcenon::network::tracing::consumer = 4 } |
| Span kind following OpenTelemetry conventions. More... | |
RAII span implementation for distributed tracing.
Provides a span class that automatically manages its lifecycle and integrates with the trace context for distributed tracing.
Definition in file span.h.
| #define NETWORK_TRACE_CLIENT_SPAN | ( | name | ) |
RAII helper macro for creating client spans.
Definition at line 311 of file span.h.
| #define NETWORK_TRACE_SERVER_SPAN | ( | name | ) |
RAII helper macro for creating server spans.
Definition at line 323 of file span.h.
| #define NETWORK_TRACE_SPAN | ( | name | ) |
RAII helper macro for creating spans.
Creates a span named '_span' that automatically ends on scope exit.
| name | Span name (string literal) |
Definition at line 305 of file span.h.