Monitoring System 0.1.0
System resource monitoring with pluggable collectors and alerting
Loading...
Searching...
No Matches
jaeger_proto.h File Reference

Serialization/deserialization of Jaeger api_v2 model.proto messages. More...

#include "protobuf_wire.h"
#include <chrono>
#include <cstdint>
#include <cstring>
#include <string>
#include <utility>
#include <vector>
Include dependency graph for jaeger_proto.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  kcenon::monitoring::jaeger_proto::key_value
 
struct  kcenon::monitoring::jaeger_proto::process
 
struct  kcenon::monitoring::jaeger_proto::span_ref
 
struct  kcenon::monitoring::jaeger_proto::span
 
struct  kcenon::monitoring::jaeger_proto::batch
 

Namespaces

namespace  kcenon
 
namespace  kcenon::monitoring
 
namespace  kcenon::monitoring::jaeger_proto
 

Enumerations

enum class  kcenon::monitoring::jaeger_proto::value_type : std::int32_t {
  kcenon::monitoring::jaeger_proto::string_type = 0 , kcenon::monitoring::jaeger_proto::bool_type = 1 , kcenon::monitoring::jaeger_proto::int64_type = 2 , kcenon::monitoring::jaeger_proto::float64_type = 3 ,
  kcenon::monitoring::jaeger_proto::binary_type = 4
}
 

Functions

std::vector< std::uint8_t > kcenon::monitoring::jaeger_proto::encode_timestamp (std::int64_t seconds, std::int32_t nanos)
 
std::vector< std::uint8_t > kcenon::monitoring::jaeger_proto::encode_duration (std::int64_t seconds, std::int32_t nanos)
 
std::vector< std::uint8_t > kcenon::monitoring::jaeger_proto::encode_key_value (const key_value &kv)
 
std::vector< std::uint8_t > kcenon::monitoring::jaeger_proto::encode_process (const process &p)
 
std::vector< std::uint8_t > kcenon::monitoring::jaeger_proto::encode_span_ref (const span_ref &ref)
 
std::vector< std::uint8_t > kcenon::monitoring::jaeger_proto::encode_span (const span &s)
 
std::vector< std::uint8_t > kcenon::monitoring::jaeger_proto::encode_batch (const batch &b)
 
bool kcenon::monitoring::jaeger_proto::decode_key_value (const std::uint8_t *data, std::size_t size, key_value &out)
 
bool kcenon::monitoring::jaeger_proto::decode_process (const std::uint8_t *data, std::size_t size, process &out)
 
bool kcenon::monitoring::jaeger_proto::decode_timestamp (const std::uint8_t *data, std::size_t size, std::int64_t &seconds, std::int32_t &nanos)
 
bool kcenon::monitoring::jaeger_proto::decode_span_ref (const std::uint8_t *data, std::size_t size, span_ref &out)
 
bool kcenon::monitoring::jaeger_proto::decode_span (const std::uint8_t *data, std::size_t size, span &out)
 
bool kcenon::monitoring::jaeger_proto::decode_batch (const std::uint8_t *data, std::size_t size, batch &out)
 

Detailed Description

Serialization/deserialization of Jaeger api_v2 model.proto messages.

Implements the minimal subset of jaeger.api_v2 required to POST spans to a Jaeger collector. Field numbers match jaegertracing/jaeger-idl proto/api_v2/model.proto: KeyValue: key=1, v_type=2, v_str=3, v_bool=4, v_int64=5, v_float64=6, v_binary=7 Log: timestamp=1, fields=2 SpanRef: trace_id=1, span_id=2, ref_type=3 Process: service_name=1, tags=2 Span: trace_id=1, span_id=2, operation_name=3, references=4, flags=5, start_time=6, duration=7, tags=8, logs=9, process=10 Batch: spans=1, process=2

google.protobuf.Timestamp: seconds=1 (int64), nanos=2 (int32) google.protobuf.Duration: seconds=1 (int64), nanos=2 (int32)

Definition in file jaeger_proto.h.