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

OpenTelemetry compatibility layer for monitoring system integration. More...

#include "../core/result_types.h"
#include "../core/error_codes.h"
#include "../tracing/distributed_tracer.h"
#include "../interfaces/monitoring_core.h"
#include "../interfaces/monitorable_interface.h"
#include <string>
#include <vector>
#include <unordered_map>
#include <chrono>
#include <memory>
#include <functional>
#include <mutex>
Include dependency graph for opentelemetry_adapter.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  kcenon::monitoring::otel_attribute
 OpenTelemetry attribute representation. More...
 
struct  kcenon::monitoring::otel_resource
 OpenTelemetry resource representation. More...
 
struct  kcenon::monitoring::otel_span_context
 OpenTelemetry span context. More...
 
struct  kcenon::monitoring::otel_span_data
 OpenTelemetry span data representation. More...
 
struct  kcenon::monitoring::otel_metric_data
 OpenTelemetry metric data representation. More...
 
class  kcenon::monitoring::opentelemetry_tracer_adapter
 Adapter for converting monitoring system traces to OpenTelemetry format. More...
 
class  kcenon::monitoring::opentelemetry_metrics_adapter
 Adapter for converting monitoring system metrics to OpenTelemetry format. More...
 
class  kcenon::monitoring::opentelemetry_exporter_config
 Configuration for OpenTelemetry exporters. More...
 
class  kcenon::monitoring::opentelemetry_compatibility_layer
 Main OpenTelemetry compatibility layer. More...
 
struct  kcenon::monitoring::opentelemetry_compatibility_layer::compatibility_stats
 Get compatibility layer statistics. More...
 

Namespaces

namespace  kcenon
 
namespace  kcenon::monitoring
 

Enumerations

enum class  kcenon::monitoring::otel_resource_type {
  kcenon::monitoring::service , kcenon::monitoring::service_instance , kcenon::monitoring::host , kcenon::monitoring::container ,
  kcenon::monitoring::process , kcenon::monitoring::runtime , kcenon::monitoring::telemetry_sdk , kcenon::monitoring::custom
}
 OpenTelemetry resource types. More...
 
enum class  kcenon::monitoring::otel_span_kind {
  kcenon::monitoring::unspecified = 0 , kcenon::monitoring::internal = 1 , kcenon::monitoring::server = 2 , kcenon::monitoring::client = 3 ,
  kcenon::monitoring::producer = 4 , kcenon::monitoring::consumer = 5
}
 OpenTelemetry span kinds. More...
 
enum class  kcenon::monitoring::otel_status_code { kcenon::monitoring::unset = 0 , kcenon::monitoring::ok = 1 , kcenon::monitoring::error = 2 }
 OpenTelemetry status codes. More...
 

Functions

otel_resource kcenon::monitoring::create_service_resource (const std::string &service_name, const std::string &service_version="1.0.0", const std::string &service_namespace="")
 Create OpenTelemetry resource with service information.
 
std::unique_ptr< opentelemetry_compatibility_layerkcenon::monitoring::create_opentelemetry_compatibility_layer (const otel_resource &resource)
 Create OpenTelemetry compatibility layer.
 
std::unique_ptr< opentelemetry_compatibility_layerkcenon::monitoring::create_opentelemetry_compatibility_layer (const std::string &service_name, const std::string &service_version="1.0.0")
 Create OpenTelemetry compatibility layer with service resource.
 

Detailed Description

OpenTelemetry compatibility layer for monitoring system integration.

This file provides OpenTelemetry-compatible interfaces and adapters to enable seamless integration with OpenTelemetry-based observability tools and platforms. Supports trace, metrics, and logs exporters following OTel specifications.

Definition in file opentelemetry_adapter.h.