MySQL 8.4.0
Source Code Documentation
plugin_client_telemetry.h File Reference

Declarations for client-side plugins of type MYSQL_CLIENT_TELEMETRY_PLUGIN. More...

Go to the source code of this file.

Classes

struct  st_mysql_client_plugin_TELEMETRY
 

Typedefs

typedef telemetry_span_t *(* telemetry_start_span_t) (const char *name)
 Start an OpenTelemetry trace span. More...
 
typedef void(* telemetry_text_map_carrier_set_t) (void *carrier_data, const char *key, size_t key_length, const char *value, size_t value_length)
 Abstract text map carrier set interface. More...
 
typedef void(* telemetry_injector_t) (telemetry_span_t *span, void *carrier_data, telemetry_text_map_carrier_set_t carrier)
 Inject an OpenTelemetry trace context into an arbitrary text map carrier. More...
 
typedef void(* telemetry_end_span_t) (telemetry_span_t *span)
 End an OpenTelemetry trace span. More...
 

Variables

struct st_mysql_client_plugin_TELEMETRYclient_telemetry_plugin
 The global telemetry_plugin pointer. More...
 

Detailed Description

Declarations for client-side plugins of type MYSQL_CLIENT_TELEMETRY_PLUGIN.

Typedef Documentation

◆ telemetry_end_span_t

typedef void(* telemetry_end_span_t) (telemetry_span_t *span)

End an OpenTelemetry trace span.

Parameters
[in]spanSpan to end

◆ telemetry_injector_t

typedef void(* telemetry_injector_t) (telemetry_span_t *span, void *carrier_data, telemetry_text_map_carrier_set_t carrier)

Inject an OpenTelemetry trace context into an arbitrary text map carrier.

Parameters
[in]spanThe trace span to inject
[in]carrier_datatext map carrier to set
[in]carrierFunction to use to set the data in the carrier

◆ telemetry_start_span_t

typedef telemetry_span_t *(* telemetry_start_span_t) (const char *name)

Start an OpenTelemetry trace span.

Parameters
[in]namespan name

◆ telemetry_text_map_carrier_set_t

typedef void(* telemetry_text_map_carrier_set_t) (void *carrier_data, const char *key, size_t key_length, const char *value, size_t value_length)

Abstract text map carrier set interface.

This is used for propagation, to set a key / value pair inside an arbitrary carrier.

Parameters
carrier_dataOpaque carrier data to set
keyKey to set
key_lengthLength of key
valueValue to set
value_lengthLength of value

Variable Documentation

◆ client_telemetry_plugin

struct st_mysql_client_plugin_TELEMETRY* client_telemetry_plugin
extern

The global telemetry_plugin pointer.