Monitoring System 0.1.0
System resource monitoring with pluggable collectors and alerting
Loading...
Searching...
No Matches
kcenon::monitoring::system_info_collector Class Reference

#include <system_resource_collector.h>

Collaboration diagram for kcenon::monitoring::system_info_collector:
Collaboration graph

Classes

struct  cpu_stats
 
struct  disk_stats
 
struct  network_stats
 

Public Member Functions

 system_info_collector ()
 
 ~system_info_collector ()
 
system_resources collect ()
 
std::chrono::seconds get_uptime () const
 
std::string get_hostname () const
 
std::string get_os_info () const
 

Private Member Functions

void collect_cpu_stats (system_resources &resources)
 
void collect_memory_stats (system_resources &resources)
 
void collect_disk_stats (system_resources &resources)
 
void collect_network_stats (system_resources &resources)
 
void collect_process_stats (system_resources &resources)
 

Private Attributes

std::mutex stats_mutex_
 
cpu_stats last_cpu_stats_
 
std::chrono::steady_clock::time_point last_collection_time_
 
network_stats last_network_stats_
 
disk_stats last_disk_stats_
 
uint64_t last_context_switches_total_ {0}
 

Detailed Description

Platform-specific system resource collector implementation

Definition at line 185 of file system_resource_collector.h.

Constructor & Destructor Documentation

◆ system_info_collector()

kcenon::monitoring::system_info_collector::system_info_collector ( )

◆ ~system_info_collector()

kcenon::monitoring::system_info_collector::~system_info_collector ( )

Member Function Documentation

◆ collect()

system_resources kcenon::monitoring::system_info_collector::collect ( )

Collect current system resources

Returns
System resource information

◆ collect_cpu_stats()

void kcenon::monitoring::system_info_collector::collect_cpu_stats ( system_resources & resources)
private

◆ collect_disk_stats()

void kcenon::monitoring::system_info_collector::collect_disk_stats ( system_resources & resources)
private

◆ collect_memory_stats()

void kcenon::monitoring::system_info_collector::collect_memory_stats ( system_resources & resources)
private

◆ collect_network_stats()

void kcenon::monitoring::system_info_collector::collect_network_stats ( system_resources & resources)
private

◆ collect_process_stats()

void kcenon::monitoring::system_info_collector::collect_process_stats ( system_resources & resources)
private

◆ get_hostname()

std::string kcenon::monitoring::system_info_collector::get_hostname ( ) const

Get system hostname

Returns
Hostname string

◆ get_os_info()

std::string kcenon::monitoring::system_info_collector::get_os_info ( ) const

Get operating system information

Returns
OS information string

◆ get_uptime()

std::chrono::seconds kcenon::monitoring::system_info_collector::get_uptime ( ) const

Get system uptime in seconds

Returns
Uptime in seconds

Member Data Documentation

◆ last_collection_time_

std::chrono::steady_clock::time_point kcenon::monitoring::system_info_collector::last_collection_time_
private

Definition at line 229 of file system_resource_collector.h.

◆ last_context_switches_total_

uint64_t kcenon::monitoring::system_info_collector::last_context_switches_total_ {0}
private

Definition at line 254 of file system_resource_collector.h.

254{0};

◆ last_cpu_stats_

cpu_stats kcenon::monitoring::system_info_collector::last_cpu_stats_
private

Definition at line 228 of file system_resource_collector.h.

◆ last_disk_stats_

disk_stats kcenon::monitoring::system_info_collector::last_disk_stats_
private

Definition at line 251 of file system_resource_collector.h.

◆ last_network_stats_

network_stats kcenon::monitoring::system_info_collector::last_network_stats_
private

Definition at line 242 of file system_resource_collector.h.

◆ stats_mutex_

std::mutex kcenon::monitoring::system_info_collector::stats_mutex_
mutableprivate

Definition at line 227 of file system_resource_collector.h.


The documentation for this class was generated from the following file: