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

Storage backend type definitions for metric persistence. More...

#include <string>
#include <vector>
#include <memory>
#include <unordered_map>
#include <chrono>
#include <mutex>
#include <deque>
#include <algorithm>
#include "kcenon/monitoring/core/result_types.h"
#include "kcenon/monitoring/interfaces/monitoring_core.h"
Include dependency graph for storage_backends.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  kcenon::monitoring::storage_config
 Storage configuration. More...
 
class  kcenon::monitoring::snapshot_storage_backend
 Base interface for snapshot storage backends. More...
 
class  kcenon::monitoring::file_storage_backend
 File storage backend for metrics snapshots. More...
 
class  kcenon::monitoring::database_storage_backend
 Database storage backend (stub implementation) More...
 
class  kcenon::monitoring::cloud_storage_backend
 Cloud storage backend (stub implementation) More...
 
class  kcenon::monitoring::memory_storage_backend
 In-memory snapshot storage backend. More...
 
class  kcenon::monitoring::storage_backend_factory
 Factory for creating storage backends. More...
 
class  kcenon::monitoring::kv_storage_backend
 Basic key-value storage interface - stub. More...
 
class  kcenon::monitoring::kv_memory_storage_backend
 In-memory key-value storage backend (legacy interface) More...
 

Namespaces

namespace  kcenon
 
namespace  kcenon::monitoring
 

Enumerations

enum class  kcenon::monitoring::storage_backend_type {
  kcenon::monitoring::memory_buffer , kcenon::monitoring::file_json , kcenon::monitoring::file_binary , kcenon::monitoring::file_csv ,
  kcenon::monitoring::database_sqlite , kcenon::monitoring::database_postgresql , kcenon::monitoring::database_mysql , kcenon::monitoring::cloud_s3 ,
  kcenon::monitoring::cloud_gcs , kcenon::monitoring::cloud_azure_blob
}
 Storage backend types. More...
 
enum class  kcenon::monitoring::compression_algorithm { kcenon::monitoring::none , kcenon::monitoring::gzip , kcenon::monitoring::lz4 , kcenon::monitoring::zstd }
 Compression algorithms. More...
 

Functions

std::unique_ptr< snapshot_storage_backendkcenon::monitoring::create_file_storage (const std::string &path, storage_backend_type type, size_t capacity)
 Create a file storage backend.
 
std::unique_ptr< snapshot_storage_backendkcenon::monitoring::create_database_storage (storage_backend_type type, const std::string &path, const std::string &table)
 Create a database storage backend.
 
std::unique_ptr< snapshot_storage_backendkcenon::monitoring::create_cloud_storage (storage_backend_type type, const std::string &bucket)
 Create a cloud storage backend.
 

Detailed Description

Storage backend type definitions for metric persistence.

Definition in file storage_backends.h.