|
| | impl ()=default |
| |
| | ~impl () |
| |
| void | initialize (const monitoring_config &config) |
| |
| void | shutdown () |
| |
| auto | is_initialized () const noexcept -> bool |
| |
| void | increment_counter (std::string_view name, std::int64_t value) |
| |
| void | set_gauge (std::string_view name, double value) |
| |
| void | record_histogram (std::string_view name, double value) |
| |
| void | record_timing (std::string_view name, std::chrono::nanoseconds duration) |
| |
| void | record_c_store (std::chrono::nanoseconds duration, std::size_t bytes, bool success) |
| |
| void | record_c_find (std::chrono::nanoseconds duration, std::size_t matches, query_level level) |
| |
| void | record_association (const std::string &calling_ae, bool established) |
| |
| void | update_storage_stats (std::size_t total_instances, std::size_t total_bytes) |
| |
| auto | get_health () -> monitoring_adapter::health_status |
| |
| void | register_health_check (std::string_view component, std::function< bool()> check) |
| |
| void | unregister_health_check (std::string_view component) |
| |
| auto | get_config () const -> const monitoring_config & |
| |
Definition at line 166 of file monitoring_adapter.cpp.
◆ impl()
| kcenon::pacs::integration::monitoring_adapter::impl::impl |
( |
| ) |
|
|
default |
◆ ~impl()
| kcenon::pacs::integration::monitoring_adapter::impl::~impl |
( |
| ) |
|
|
inline |
◆ get_config()
| auto kcenon::pacs::integration::monitoring_adapter::impl::get_config |
( |
| ) |
const -> const monitoring_config& |
|
inlinenodiscard |
◆ get_health()
Definition at line 337 of file monitoring_adapter.cpp.
337 {
338 monitoring_adapter::health_status
status;
340 status.status =
"healthy";
341
344 try {
345 bool component_healthy = check();
346 status.components[component] = component_healthy ?
"healthy" :
"unhealthy";
347 if (!component_healthy) {
349 status.status =
"degraded";
350 }
351 } catch (const std::exception& e) {
352 status.components[component] = std::string(
"error: ") + e.what();
354 status.status =
"degraded";
355 }
356 }
357
359 }
std::unordered_map< std::string, std::function< bool()> > health_checks_
std::shared_mutex health_checks_mutex_
Referenced by kcenon::pacs::integration::monitoring_adapter::get_health().
◆ increment_counter()
| void kcenon::pacs::integration::monitoring_adapter::impl::increment_counter |
( |
std::string_view | name, |
|
|
std::int64_t | value ) |
|
inline |
◆ initialize()
| void kcenon::pacs::integration::monitoring_adapter::impl::initialize |
( |
const monitoring_config & | config | ) |
|
|
inline |
◆ is_initialized()
| auto kcenon::pacs::integration::monitoring_adapter::impl::is_initialized |
( |
| ) |
const -> bool |
|
inlinenodiscardnoexcept |
◆ record_association()
| void kcenon::pacs::integration::monitoring_adapter::impl::record_association |
( |
const std::string & | calling_ae, |
|
|
bool | established ) |
|
inline |
◆ record_c_find()
| void kcenon::pacs::integration::monitoring_adapter::impl::record_c_find |
( |
std::chrono::nanoseconds | duration, |
|
|
std::size_t | matches, |
|
|
query_level | level ) |
|
inline |
Definition at line 281 of file monitoring_adapter.cpp.
283 {
285
286
287 {
290 }
291
292
294 auto& profiler =
295 kcenon::monitoring::global_performance_monitor().get_profiler();
297
298
299 auto matches_as_duration =
300 std::chrono::nanoseconds(static_cast<std::int64_t>(matches));
302 }
303
304 (void)level;
305 }
constexpr const char * c_find_duration
constexpr const char * c_find_matches
bool enable_metrics
Enable metrics collection.
Referenced by kcenon::pacs::integration::monitoring_adapter::record_c_find().
◆ record_c_store()
| void kcenon::pacs::integration::monitoring_adapter::impl::record_c_store |
( |
std::chrono::nanoseconds | duration, |
|
|
std::size_t | bytes, |
|
|
bool | success ) |
|
inline |
◆ record_histogram()
| void kcenon::pacs::integration::monitoring_adapter::impl::record_histogram |
( |
std::string_view | name, |
|
|
double | value ) |
|
inline |
◆ record_timing()
| void kcenon::pacs::integration::monitoring_adapter::impl::record_timing |
( |
std::string_view | name, |
|
|
std::chrono::nanoseconds | duration ) |
|
inline |
◆ register_health_check()
| void kcenon::pacs::integration::monitoring_adapter::impl::register_health_check |
( |
std::string_view | component, |
|
|
std::function< bool()> | check ) |
|
inline |
◆ set_gauge()
| void kcenon::pacs::integration::monitoring_adapter::impl::set_gauge |
( |
std::string_view | name, |
|
|
double | value ) |
|
inline |
◆ shutdown()
| void kcenon::pacs::integration::monitoring_adapter::impl::shutdown |
( |
| ) |
|
|
inline |
◆ unregister_health_check()
| void kcenon::pacs::integration::monitoring_adapter::impl::unregister_health_check |
( |
std::string_view | component | ) |
|
|
inline |
◆ update_storage_stats()
| void kcenon::pacs::integration::monitoring_adapter::impl::update_storage_stats |
( |
std::size_t | total_instances, |
|
|
std::size_t | total_bytes ) |
|
inline |
◆ config_
◆ counters_
| std::unordered_map<std::string, std::int64_t> kcenon::pacs::integration::monitoring_adapter::impl::counters_ |
|
private |
◆ counters_mutex_
| std::mutex kcenon::pacs::integration::monitoring_adapter::impl::counters_mutex_ |
|
mutableprivate |
◆ gauges_
| std::unordered_map<std::string, double> kcenon::pacs::integration::monitoring_adapter::impl::gauges_ |
|
private |
◆ gauges_mutex_
| std::mutex kcenon::pacs::integration::monitoring_adapter::impl::gauges_mutex_ |
|
mutableprivate |
◆ health_checks_
| std::unordered_map<std::string, std::function<bool()> > kcenon::pacs::integration::monitoring_adapter::impl::health_checks_ |
|
private |
◆ health_checks_mutex_
| std::shared_mutex kcenon::pacs::integration::monitoring_adapter::impl::health_checks_mutex_ |
|
mutableprivate |
◆ initialized_
| std::atomic<bool> kcenon::pacs::integration::monitoring_adapter::impl::initialized_ {false} |
|
private |
◆ mutex_
| std::mutex kcenon::pacs::integration::monitoring_adapter::impl::mutex_ |
|
mutableprivate |
The documentation for this class was generated from the following file: