Skip to content

refactor: consolidate monitoring_interface.h with common_system canonical definition#266

Merged
kcenon merged 3 commits into
mainfrom
refactor/consolidate-monitoring-interface-265
Dec 21, 2025
Merged

refactor: consolidate monitoring_interface.h with common_system canonical definition#266
kcenon merged 3 commits into
mainfrom
refactor/consolidate-monitoring-interface-265

Conversation

@kcenon

@kcenon kcenon commented Dec 21, 2025

Copy link
Copy Markdown
Owner

Summary

  • Rename monitoring_interface.h to monitoring_core.h to avoid naming collision with common_system's canonical monitoring_interface.h (which defines IMonitor)
  • Convert old path to deprecated forwarding header for backward compatibility
  • Update all internal include paths to use the new header name

Changes

Core Interface Rename

  • include/kcenon/monitoring/interfaces/monitoring_interface.hmonitoring_core.h
  • Old header preserved as deprecated forwarding header with compiler warnings

Updated Files (18 files)

  • Headers: performance_monitor.h, opentelemetry_adapter.h, metric_exporters.h, common_monitor_adapter.h, common_system_adapter.h, health_monitor.h, adaptive_monitor.h, metric_storage.h
  • Tests: test_storage_backends.cpp, test_opentelemetry_adapter.cpp, test_metric_exporters.cpp, test_integration_e2e.cpp, test_stress_performance.cpp, test_result_types.cpp
  • Examples: basic_monitoring_example.cpp, result_pattern_example.cpp
  • Docs: API_REFERENCE.md, API_REFERENCE_KO.md

Interface Disambiguation

Header Namespace Purpose
kcenon/common/interfaces/monitoring_interface.h kcenon::common::interfaces IMonitor, IMonitorable (standard interface)
kcenon/monitoring/interfaces/monitoring_core.h kcenon::monitoring monitoring_interface, metrics_collector, storage_backend (extended system)

Migration Guide

// Before
#include <kcenon/monitoring/interfaces/monitoring_interface.h>

// After
#include <kcenon/monitoring/interfaces/monitoring_core.h>

Test Plan

  • Library builds successfully without deprecation warnings
  • Deprecated header shows appropriate compiler warnings
  • Backward compatibility maintained via forwarding header

Closes #265

Rename the monitoring system's interface file to avoid naming
collision with common_system's canonical monitoring_interface.h
which defines the IMonitor interface.

Changes:
- Create monitoring_core.h with the original interface definitions
- Convert monitoring_interface.h to deprecated forwarding header
- Update all internal includes to use monitoring_core.h
- Add deprecation warnings for backward compatibility

This resolves issue #265 by clearly differentiating:
- kcenon/common/interfaces/monitoring_interface.h: IMonitor interface
- kcenon/monitoring/interfaces/monitoring_core.h: monitoring_interface class

Closes #265
Update additional header files that were still using the deprecated
monitoring_interface.h path to use the new monitoring_core.h:

- include/kcenon/monitoring/core/performance_monitor.h
- include/kcenon/monitoring/exporters/opentelemetry_adapter.h
- include/kcenon/monitoring/exporters/metric_exporters.h
- include/kcenon/monitoring/adapters/common_system_adapter.h

This eliminates deprecation warnings when building the library.
Update API documentation to reflect the rename of monitoring_interface.h
to monitoring_core.h:

- Update header paths in both English and Korean versions
- Add notes explaining the rename reason and backward compatibility
@kcenon kcenon merged commit 7606b33 into main Dec 21, 2025
21 checks passed
@kcenon kcenon deleted the refactor/consolidate-monitoring-interface-265 branch December 21, 2025 08:40
kcenon added a commit that referenced this pull request Apr 13, 2026
…ical definition (#266)

* refactor: rename monitoring_interface.h to monitoring_core.h

Rename the monitoring system's interface file to avoid naming
collision with common_system's canonical monitoring_interface.h
which defines the IMonitor interface.

Changes:
- Create monitoring_core.h with the original interface definitions
- Convert monitoring_interface.h to deprecated forwarding header
- Update all internal includes to use monitoring_core.h
- Add deprecation warnings for backward compatibility

This resolves issue #265 by clearly differentiating:
- kcenon/common/interfaces/monitoring_interface.h: IMonitor interface
- kcenon/monitoring/interfaces/monitoring_core.h: monitoring_interface class

Closes #265

* refactor: update remaining include paths to monitoring_core.h

Update additional header files that were still using the deprecated
monitoring_interface.h path to use the new monitoring_core.h:

- include/kcenon/monitoring/core/performance_monitor.h
- include/kcenon/monitoring/exporters/opentelemetry_adapter.h
- include/kcenon/monitoring/exporters/metric_exporters.h
- include/kcenon/monitoring/adapters/common_system_adapter.h

This eliminates deprecation warnings when building the library.

* docs: update API reference for monitoring_core.h rename

Update API documentation to reflect the rename of monitoring_interface.h
to monitoring_core.h:

- Update header paths in both English and Korean versions
- Add notes explaining the rename reason and backward compatibility
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.

refactor: Consolidate monitoring_interface.h with common_system canonical definition

1 participant