|
ORE Studio 0.0.4
|
Represents a single operation within a trace. More...
#include <span.hpp>

Public Attributes | |
| span_context | context |
| The span's identity (trace_id + span_id + flags). | |
| std::optional< span_id > | parent_span_id |
| The parent span's ID, if this is not a root span. | |
| std::vector< span_link > | links |
| Links to other spans forming hypergraph relationships. | |
| std::string | name |
| A human-readable name describing the operation. | |
| span_kind | kind = span_kind::internal |
| The kind of span (internal, server, client, producer, consumer). | |
| std::chrono::system_clock::time_point | start_time |
| When the span started. | |
| std::optional< std::chrono::system_clock::time_point > | end_time |
| When the span ended. Empty if the span is still in progress. | |
| span_status_code | status_code = span_status_code::unset |
| The status code of the operation. | |
| std::string | status_message |
| A message describing the status, typically set when status is error. | |
| attributes | attrs |
| Key-value pairs providing additional context about the operation. | |
Represents a single operation within a trace.
A span is the primary building block of a distributed trace. It represents a single operation and contains timing information, a name, attributes, and relationships to other spans. Spans form a tree structure through parent-child relationships, and can also form a hypergraph through links.
This structure is designed to be compatible with OpenTelemetry's span model.
| std::string name |
A human-readable name describing the operation.
Examples: "HTTP GET /users", "database.query", "calculate_pv01"
| attributes attrs |
Key-value pairs providing additional context about the operation.
OpenTelemetry semantic conventions define standard attribute names.