6#ifndef KCENON_NETWORK_INTERNAL_INTEGRATION_OBSERVABILITY_BRIDGE_H_
7#define KCENON_NETWORK_INTERNAL_INTEGRATION_OBSERVABILITY_BRIDGE_H_
53#if KCENON_WITH_COMMON_SYSTEM
54#include <kcenon/common/interfaces/logger_interface.h>
55#include <kcenon/common/interfaces/monitoring_interface.h>
109 std::shared_ptr<logger_interface> logger,
110 std::shared_ptr<monitoring_interface> monitor,
198 std::shared_ptr<logger_interface>
get_logger()
const;
213 std::shared_ptr<monitoring_interface>
get_monitor()
const;
223#if KCENON_WITH_COMMON_SYSTEM
244 static std::shared_ptr<ObservabilityBridge> from_common_system(
245 std::shared_ptr<::kcenon::common::interfaces::ILogger> logger,
246 std::shared_ptr<::kcenon::common::interfaces::IMonitor> monitor);
Unified interface for external system integration bridges.
Abstract interface for external system integration bridges.
Bridge for observability (logger + monitoring) integration implementing INetworkBridge.
BridgeMetrics get_metrics() const override
Get current metrics.
BackendType backend_type_
bool is_initialized() const override
Check if the bridge is initialized.
~ObservabilityBridge() override
Destructor.
std::mutex metrics_mutex_
std::atomic< bool > initialized_
std::shared_ptr< logger_interface > get_logger() const
Get the logger interface.
std::shared_ptr< monitoring_interface > monitor_
BridgeMetrics cached_metrics_
std::shared_ptr< logger_interface > logger_
VoidResult shutdown() override
Shutdown the bridge.
BackendType get_backend_type() const
Get the backend type.
ObservabilityBridge(std::shared_ptr< logger_interface > logger, std::shared_ptr< monitoring_interface > monitor, BackendType backend_type=BackendType::Standalone)
Construct bridge with logger and monitoring interfaces.
std::shared_ptr< monitoring_interface > get_monitor() const
Get the monitoring interface.
BackendType
Type of observability backend.
@ CommonSystem
Uses common_system's ILogger and IMonitor.
@ Standalone
Uses network_system's logger_interface and monitoring_interface.
Feature flags for network_system.
Logger system integration interface for network_system.
Monitoring system integration interface for network_system.
VoidResult initialize()
Initialize the network system with default production configuration.
Configuration for bridge initialization.
Metrics and health information for a bridge.