Couchbase C Client  2.10.0
Asynchronous C Client for Couchbase
tracing.h File Reference

End to end tracing. More...

Go to the source code of this file.

Data Structures

struct  lcbtrace_TRACER
 Tracer interface. More...
 
struct  ldcptrace_REPORTER
 
More...
 

Macros

#define LCB_TRACING_H
 
#define LCBTRACE_F_THRESHOLD
 Flag for lcbtrace_new to request threshold logging tracer.
 
#define LCBTRACE_NOW
 zero means the library will trigger timestamp automatically
 
#define LCBTRACE_OP_REQUEST_ENCODING
 
#define LCBTRACE_OP_DISPATCH_TO_SERVER
 
#define LCBTRACE_OP_RESPONSE_DECODING
 
#define LCBTRACE_OP_ADD
 
#define LCBTRACE_OP_APPEND
 
#define LCBTRACE_OP_COUNTER
 
#define LCBTRACE_OP_GET
 
#define LCBTRACE_OP_GET_FROM_REPLICA
 
#define LCBTRACE_OP_INSERT
 
#define LCBTRACE_OP_OBSERVE_CAS
 
#define LCBTRACE_OP_OBSERVE_CAS_ROUND
 
#define LCBTRACE_OP_OBSERVE_SEQNO
 
#define LCBTRACE_OP_PREPEND
 
#define LCBTRACE_OP_REMOVE
 
#define LCBTRACE_OP_REPLACE
 
#define LCBTRACE_OP_TOUCH
 
#define LCBTRACE_OP_UNLOCK
 
#define LCBTRACE_OP_UPSERT
 
#define LCBTRACE_OP_UPSERT
 
#define LCBTRACE_OP_STORE2NAME(code)
 
#define LCBTRACE_TAG_DB_TYPE
 
#define LCBTRACE_TAG_SPAN_KIND
 
#define LCBTRACE_TAG_DB_INSTANCE
 Bucket name.
 
#define LCBTRACE_TAG_COMPONENT
 The client's identifier string (the 'u' property in the updated HELLO request), the same one that is shared with the server to identify the SDK.
 
#define LCBTRACE_TAG_OPERATION_ID
 The unique ID of the operation.
 
#define LCBTRACE_TAG_SERVICE
 The service type, one of the following: kv, view, n1ql, search, analytics.
 
#define LCBTRACE_TAG_SERVICE_KV
 
#define LCBTRACE_TAG_SERVICE_VIEW
 
#define LCBTRACE_TAG_SERVICE_N1QL
 
#define LCBTRACE_TAG_SERVICE_SEARCH
 
#define LCBTRACE_TAG_SERVICE_ANALYTICS
 
#define LCBTRACE_TAG_LOCAL_ID
 
#define LCBTRACE_TAG_LOCAL_ADDRESS
 The local socket hostname / IP and port, in the format: {hostname}:{port} To be added to dispatch spans when the local socket is available.
 
#define LCBTRACE_TAG_PEER_ADDRESS
 The remote socket hostname / IP and port, in the format: {hostname}:{port} To be added to dispatch spans when the local socket is available.
 
#define LCBTRACE_TAG_PEER_LATENCY
 The server duration with precision suffix. More...
 
#define LCB_CMD_SET_TRACESPAN(cmd, span)
 
Sets the tracing context for the command. More...
 

Typedefs

typedef struct lcbtrace_SPAN_Cdummy lcbtrace_SPAN
 

Enumerations

enum  lcbtrace_REF_TYPE
 

Functions

lcbtrace_TRACERlcb_get_tracer (lcb_t instance)
 
Get current tracer of the connection. More...
 
void lcb_set_tracer (lcb_t instance, lcbtrace_TRACER *tracer)
 
Set current tracer for the connection. More...
 
lcbtrace_TRACERlcbtrace_new (lcb_t instance, lcb_U64 flags)
 
Create default libcouchbase tracer instance. More...
 
void lcbtrace_destroy (lcbtrace_TRACER *tracer)
 
Destroy tracer object. More...
 
lcb_U64 lcbtrace_now (void)
 
Get current timestamp. More...
 
lcbtrace_SPAN * lcbtrace_span_start (lcbtrace_TRACER *tracer, const char *operation, lcb_U64 now, lcbtrace_REF *ref)
 
Start span. More...
 
void lcbtrace_span_finish (lcbtrace_SPAN *span, lcb_U64 now)
 
Mark the span as finished. More...
 
lcb_U64 lcbtrace_span_get_start_ts (lcbtrace_SPAN *span)
 
Get start timestamp of the span. More...
 
lcb_U64 lcbtrace_span_get_finish_ts (lcbtrace_SPAN *span)
 
Get finish timestamp of the span. More...
 
int lcbtrace_span_is_orphaned (lcbtrace_SPAN *span)
 
Check if the span is orphaned. More...
 
const char * lcbtrace_span_get_operation (lcbtrace_SPAN *span)
 
Get operation code of the span. More...
 
lcb_U64 lcbtrace_span_get_span_id (lcbtrace_SPAN *span)
 
Get ID of the span. More...
 
lcb_U64 lcbtrace_span_get_trace_id (lcbtrace_SPAN *span)
 
Get trace ID of the span. More...
 
lcbtrace_SPAN * lcbtrace_span_get_parent (lcbtrace_SPAN *span)
 
Get parent span of the span. More...
 
lcb_error_t lcbtrace_span_get_tag_str (lcbtrace_SPAN *span, const char *name, char **value, size_t *nvalue)
 
Get value of the string tag of the span. More...
 
lcb_error_t lcbtrace_span_get_tag_uint64 (lcbtrace_SPAN *span, const char *name, lcb_U64 *value)
 
Get value of the integer tag of the span. More...
 
lcb_error_t lcbtrace_span_get_tag_double (lcbtrace_SPAN *span, const char *name, double *value)
 
Get value of the double tag of the span. More...
 
lcb_error_t lcbtrace_span_get_tag_bool (lcbtrace_SPAN *span, const char *name, int *value)
 
Get value of the boolean tag of the span. More...
 
void lcbtrace_span_add_tag_str (lcbtrace_SPAN *span, const char *name, const char *value)
 
Add string tag to span. More...
 
void lcbtrace_span_add_tag_uint64 (lcbtrace_SPAN *span, const char *name, lcb_U64 value)
 
Add integer tag to span. More...
 
void lcbtrace_span_add_tag_double (lcbtrace_SPAN *span, const char *name, double value)
 
Add double tag to span. More...
 
void lcbtrace_span_add_tag_bool (lcbtrace_SPAN *span, const char *name, int value)
 
Add boolean tag to span. More...
 

Detailed Description

End to end tracing.