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

Unified process-level metrics collector. More...

#include <atomic>
#include <chrono>
#include <cstdint>
#include <memory>
#include <string>
#include <unordered_map>
#include <vector>
#include "../interfaces/metric_types_adapter.h"
#include "../plugins/collector_plugin.h"
Include dependency graph for process_metrics_collector.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  kcenon::monitoring::fd_metrics
 File descriptor usage metrics. More...
 
struct  kcenon::monitoring::filesystem_inode_info
 Inode usage information for a single filesystem. More...
 
struct  kcenon::monitoring::inode_metrics
 Aggregated inode usage metrics for all filesystems. More...
 
struct  kcenon::monitoring::process_context_switch_info
 Context switch information for the current process. More...
 
struct  kcenon::monitoring::context_switch_metrics
 Aggregated context switch metrics for system and process. More...
 
struct  kcenon::monitoring::process_metrics_config
 Configuration for selective metric collection. More...
 
struct  kcenon::monitoring::process_metrics
 Combined process-level metrics. More...
 
class  kcenon::monitoring::fd_info_collector
 File descriptor data collector using platform abstraction layer. More...
 
class  kcenon::monitoring::inode_info_collector
 Inode data collector using platform abstraction layer. More...
 
class  kcenon::monitoring::context_switch_info_collector
 Context switch data collector using platform abstraction layer. More...
 
class  kcenon::monitoring::process_metrics_collector
 Unified process-level metrics collector. More...
 

Namespaces

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

Detailed Description

Unified process-level metrics collector.

This file consolidates file descriptor, inode, and context switch monitoring into a single collector for comprehensive process-level monitoring.

Consolidates:

  • fd_collector: File descriptor usage monitoring
  • inode_collector: Filesystem inode monitoring
  • context_switch_collector: Context switch statistics

Platform APIs:

  • Linux: /proc filesystem, statvfs(), getrlimit()
  • macOS: statvfs(), getmntinfo(), host_statistics()
  • Windows: GetProcessHandleCount() (partial support)

Definition in file process_metrics_collector.h.