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

Interrupt data collector using platform abstraction layer. More...

#include <interrupt_collector.h>

Collaboration diagram for kcenon::monitoring::interrupt_info_collector:
Collaboration graph

Public Member Functions

 interrupt_info_collector ()
 
 ~interrupt_info_collector ()
 
 interrupt_info_collector (const interrupt_info_collector &)=delete
 
interrupt_info_collectoroperator= (const interrupt_info_collector &)=delete
 
 interrupt_info_collector (interrupt_info_collector &&)=delete
 
interrupt_info_collectoroperator= (interrupt_info_collector &&)=delete
 
bool is_interrupt_monitoring_available () const
 
interrupt_metrics collect_metrics ()
 

Private Attributes

std::unique_ptr< platform::metrics_providerprovider_
 
uint64_t prev_interrupts_total_ {0}
 
uint64_t prev_soft_interrupts_total_ {0}
 
std::chrono::system_clock::time_point prev_timestamp_
 
bool has_previous_sample_ {false}
 

Detailed Description

Interrupt data collector using platform abstraction layer.

This class provides interrupt data collection using the unified metrics_provider interface, eliminating platform-specific code.

Definition at line 72 of file interrupt_collector.h.

Constructor & Destructor Documentation

◆ interrupt_info_collector() [1/3]

kcenon::monitoring::interrupt_info_collector::interrupt_info_collector ( )

◆ ~interrupt_info_collector()

kcenon::monitoring::interrupt_info_collector::~interrupt_info_collector ( )

◆ interrupt_info_collector() [2/3]

kcenon::monitoring::interrupt_info_collector::interrupt_info_collector ( const interrupt_info_collector & )
delete

◆ interrupt_info_collector() [3/3]

kcenon::monitoring::interrupt_info_collector::interrupt_info_collector ( interrupt_info_collector && )
delete

Member Function Documentation

◆ collect_metrics()

interrupt_metrics kcenon::monitoring::interrupt_info_collector::collect_metrics ( )

Collect current interrupt metrics

Returns
interrupt_metrics structure with current values

◆ is_interrupt_monitoring_available()

bool kcenon::monitoring::interrupt_info_collector::is_interrupt_monitoring_available ( ) const

Check if interrupt monitoring is available on this system

Returns
True if interrupt metrics can be read

◆ operator=() [1/2]

interrupt_info_collector & kcenon::monitoring::interrupt_info_collector::operator= ( const interrupt_info_collector & )
delete

◆ operator=() [2/2]

interrupt_info_collector & kcenon::monitoring::interrupt_info_collector::operator= ( interrupt_info_collector && )
delete

Member Data Documentation

◆ has_previous_sample_

bool kcenon::monitoring::interrupt_info_collector::has_previous_sample_ {false}
private

Definition at line 102 of file interrupt_collector.h.

102{false};

◆ prev_interrupts_total_

uint64_t kcenon::monitoring::interrupt_info_collector::prev_interrupts_total_ {0}
private

Definition at line 99 of file interrupt_collector.h.

99{0};

◆ prev_soft_interrupts_total_

uint64_t kcenon::monitoring::interrupt_info_collector::prev_soft_interrupts_total_ {0}
private

Definition at line 100 of file interrupt_collector.h.

100{0};

◆ prev_timestamp_

std::chrono::system_clock::time_point kcenon::monitoring::interrupt_info_collector::prev_timestamp_
private

Definition at line 101 of file interrupt_collector.h.

◆ provider_

std::unique_ptr<platform::metrics_provider> kcenon::monitoring::interrupt_info_collector::provider_
private

Definition at line 96 of file interrupt_collector.h.


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