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

Platform abstraction layer for system metrics collection. More...

#include <chrono>
#include <cstdint>
#include <memory>
#include <string>
#include <vector>
#include "../collectors/battery_collector.h"
#include "../collectors/temperature_collector.h"
Include dependency graph for metrics_provider.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  kcenon::monitoring::platform::uptime_info
 System uptime information. More...
 
struct  kcenon::monitoring::platform::context_switch_info
 Context switch statistics. More...
 
struct  kcenon::monitoring::platform::fd_info
 File descriptor statistics. More...
 
struct  kcenon::monitoring::platform::inode_info
 Inode statistics. More...
 
struct  kcenon::monitoring::platform::tcp_state_info
 TCP connection state statistics. More...
 
struct  kcenon::monitoring::platform::socket_buffer_info
 Socket buffer statistics. More...
 
struct  kcenon::monitoring::platform::interrupt_info
 Interrupt statistics. More...
 
struct  kcenon::monitoring::platform::power_info
 Power consumption information. More...
 
struct  kcenon::monitoring::platform::gpu_info
 GPU information and metrics. More...
 
struct  kcenon::monitoring::platform::security_info
 Security-related metrics. More...
 
class  kcenon::monitoring::platform::metrics_provider
 Abstract interface for platform-specific metrics collection. More...
 

Namespaces

namespace  kcenon
 
namespace  kcenon::monitoring
 
namespace  kcenon::monitoring::platform
 

Detailed Description

Platform abstraction layer for system metrics collection.

This file provides a unified interface for collecting system metrics across different platforms (Linux, macOS, Windows). Each platform implements the metrics_provider interface with platform-specific code.

Usage:

auto provider = metrics_provider::create();
auto battery_readings = provider->get_battery_readings();
auto temp_readings = provider->get_temperature_readings();

Definition in file metrics_provider.h.