Skip to content

feat(monitoring): migrate to common::interfaces::IMonitor (#312)#323

Merged
kcenon merged 2 commits into
mainfrom
feature/312-migrate-monitoring-to-common-interfaces
Dec 19, 2025
Merged

feat(monitoring): migrate to common::interfaces::IMonitor (#312)#323
kcenon merged 2 commits into
mainfrom
feature/312-migrate-monitoring-to-common-interfaces

Conversation

@kcenon

@kcenon kcenon commented Dec 19, 2025

Copy link
Copy Markdown
Owner

Summary

  • Replace deprecated thread_system monitoring interfaces with common_system's IMonitor interface
  • Remove monitoring_interface.h, monitorable_interface.h, and common_system_monitoring_adapter.h
  • Update thread_context to use common::interfaces::IMonitor for metrics recording
  • Update all tests and examples to use new API

Changes

Breaking Changes

  • kcenon::thread::monitoring_interface::monitoring_interface removed
  • kcenon::thread::monitorable_interface removed
  • Users should now register common::interfaces::IMonitor implementations

API Migration

Before After
monitoring_interface::monitoring_interface common::interfaces::IMonitor
monitoring_interface::thread_pool_metrics common::interfaces::thread_pool_metrics
monitoring_interface::worker_metrics common::interfaces::worker_metrics
monitoring_interface::system_metrics common::interfaces::system_metrics
update_*_metrics(metrics) record_metric(name, value, tags)

New Monitoring Pattern

The thread_context now translates structured metrics to individual record_metric() calls with tags:

// Old way (removed)
context.update_thread_pool_metrics(metrics);

// New way (internal implementation)
monitoring_->record_metric("jobs_completed", value, {{"component", "thread_pool"}, {"pool_name", name}});

Test plan

  • All unit tests pass (11/11)
  • Integration tests pass
  • Performance tests pass
  • Examples compile and run correctly
  • Build succeeds with BUILD_WITH_COMMON_SYSTEM=ON

Closes #312

Replace deprecated thread_system monitoring interfaces with
common_system's IMonitor interface.

Changes:
- Remove monitoring_interface.h, monitorable_interface.h
- Remove common_system_monitoring_adapter.h (no longer needed)
- Update thread_context.h to use common::interfaces::IMonitor
- Update thread_pool.cpp to use common::interfaces types
- Update thread_worker.cpp to use common::interfaces types
- Update tests and examples to use new API

The thread_context now translates thread pool metrics to
individual IMonitor::record_metric() calls with tags for
component identification.

Closes #312
Add documentation for Issue #312 - Phase 3 changes:
- Document removed monitoring_interface.h and related headers
- Document thread_context migration to common::interfaces::IMonitor
- Update both English and Korean CHANGELOG files
@github-actions

Copy link
Copy Markdown
Contributor

📊 Performance Benchmark Results

Performance Benchmark Report

No benchmark data available.

ℹ️ No baseline reference available

This is the first benchmark run or baseline file is missing.

@kcenon kcenon merged commit 22ce1a6 into main Dec 19, 2025
26 checks passed
@kcenon kcenon deleted the feature/312-migrate-monitoring-to-common-interfaces branch December 19, 2025 06:34
kcenon added a commit that referenced this pull request Apr 13, 2026
* feat(monitoring): migrate to common::interfaces::IMonitor

Replace deprecated thread_system monitoring interfaces with
common_system's IMonitor interface.

Changes:
- Remove monitoring_interface.h, monitorable_interface.h
- Remove common_system_monitoring_adapter.h (no longer needed)
- Update thread_context.h to use common::interfaces::IMonitor
- Update thread_pool.cpp to use common::interfaces types
- Update thread_worker.cpp to use common::interfaces types
- Update tests and examples to use new API

The thread_context now translates thread pool metrics to
individual IMonitor::record_metric() calls with tags for
component identification.

Closes #312

* docs: update CHANGELOG for monitoring interface migration

Add documentation for Issue #312 - Phase 3 changes:
- Document removed monitoring_interface.h and related headers
- Document thread_context migration to common::interfaces::IMonitor
- Update both English and Korean CHANGELOG files
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Phase 3: Migrate monitoring to common::interfaces::IMonitor/IMonitorable

1 participant