1 #ifndef OPENTRACINGC_TRACER_H 2 #define OPENTRACINGC_TRACER_H 7 #include <opentracing-c/visibility.h> 88 const char* operation_name)
89 OPENTRACINGC_NONNULL_ALL;
100 const char* operation_name,
142 int (*callback)(
void*,
const char*, size_t),
145 OPENTRACINGC_NONNULL(1, 2, 4);
212 int (*callback)(
void*,
char*, size_t),
opentracing_propagation_error_code(* extract_binary)(struct opentracing_tracer *tracer, int(*callback)(void *, char *, size_t), void *arg, opentracing_span_context **span_context) OPENTRACINGC_NONNULL(1
Extract span context from carrier.
Definition: tracer.h:210
Duration type to calculate precise intervals (should use monotonic clock).
Definition: common.h:37
struct opentracing_start_span_options opentracing_start_span_options
Options used when calling start_span_with_options().
opentracing_propagation_error_code
Error codes for errors occurring in span context propagation.
Definition: propagation.h:16
struct opentracing_tag opentracing_tag
Simple tag representation.
const opentracing_span_reference * references
Array of references.
Definition: tracer.h:38
OPENTRACINGC_EXPORT void opentracing_init_global_tracer(opentracing_tracer *tracer) OPENTRACINGC_NONNULL_ALL
Install a global tracer.
Definition: tracer.c:232
Simple tag representation.
Definition: tracer.h:16
opentracing_span *(*) opentracing_propagation_error_code(* inject_text_map)(struct opentracing_tracer *tracer, opentracing_text_map_writer *carrier, const opentracing_span_context *span_context) OPENTRACINGC_NONNULL_ALL
Inject span context into text map carrier.
Definition: tracer.h:111
opentracing_propagation_error_code(*) opentracing_propagation_error_code(* extract_custom)(struct opentracing_tracer *tracer, opentracing_custom_carrier_reader *carrier, opentracing_span_context **span_context) OPENTRACINGC_NONNULL_ALL
Extract span context from carrier.
Definition: tracer.h:228
opentracing_duration start_time_steady
Start time using monotonic clock.
Definition: tracer.h:28
int num_references
Number of references in array.
Definition: tracer.h:44
The inject carrier for the opentracing_propagation_format_text_map.
Definition: propagation.h:65
Destructible interface.
Definition: destructible.h:16
const opentracing_tag * tags
Array of tags.
Definition: tracer.h:49
extract() carrier for a custom format.
Definition: propagation.h:146
The extract() carrier for the opentracing_propagation_format_text_map with it, the caller can decode ...
Definition: propagation.h:95
inject() carrier for a custom format.
Definition: propagation.h:169
opentracing_timestamp start_time_system
Start time using realtime clock.
Definition: tracer.h:33
OPENTRACINGC_EXPORT opentracing_tracer * opentracing_global_tracer(void)
Get the tracer singleton.
Definition: tracer.c:227
Options used when calling start_span_with_options().
Definition: tracer.h:24
opentracing_propagation_error_code(* inject_binary)(struct opentracing_tracer *tracer, int(*callback)(void *, const char *, size_t), void *arg, const opentracing_span_context *span_context) OPENTRACINGC_NONNULL(1
Inject span context into binary carrier.
Definition: tracer.h:140
opentracing_propagation_error_code(* extract_text_map)(struct opentracing_tracer *tracer, opentracing_text_map_reader *carrier, opentracing_span_context **span_context) OPENTRACINGC_NONNULL_ALL
Extract span context from carrier.
Definition: tracer.h:171
struct opentracing_tracer opentracing_tracer
Tracer interface.
Tracer interface.
Definition: tracer.h:61
opentracing_destructible base
Base class member.
Definition: tracer.h:63
Timestamp type to represent absolute time (should use system clock).
Definition: common.h:43
void(* close)(struct opentracing_tracer *tracer) OPENTRACINGC_NONNULL_ALL
Close the tracer.
Definition: tracer.h:79
opentracing_propagation_error_code(*) opentracing_propagation_error_code(* inject_custom)(struct opentracing_tracer *tracer, opentracing_custom_carrier_writer *carrier, const opentracing_span_context *span_context) OPENTRACINGC_NONNULL_ALL
Inject span context into custom carrier.
Definition: tracer.h:154
opentracing_propagation_error_code(* extract_http_headers)(struct opentracing_tracer *tracer, opentracing_http_headers_reader *carrier, opentracing_span_context **span_context) OPENTRACINGC_NONNULL_ALL
Extract span context from carrier.
Definition: tracer.h:188
int num_tags
Number of tags in array.
Definition: tracer.h:54
Span interface.
Definition: span.h:161
Tagged union that can represent a number of value types.
Definition: value.h:30
Span context interface.
Definition: span.h:20
char * key
String key.
Definition: tracer.h:18
opentracing_value value
Generic value type.
Definition: tracer.h:20
opentracing_propagation_error_code(* inject_http_headers)(struct opentracing_tracer *tracer, opentracing_http_headers_writer *carrier, const opentracing_span_context *span_context) OPENTRACINGC_NONNULL_ALL
Inject span context into HTTP headers carrier.
Definition: tracer.h:123