"""
Shared monitoring package for microservices
"""

from .logging import setup_logging
from .metrics import setup_metrics_early, get_metrics_collector, MetricsCollector
from .health_checks import (
    HealthCheckManager,
    FastAPIHealthChecker,
    create_health_manager,
    setup_fastapi_health_checks
)
from .logs_exporter import (
    setup_otel_logging,
    add_log_context,
    get_current_trace_context,
    StructlogOTELProcessor
)
from .metrics_exporter import (
    setup_otel_metrics,
    OTelMetricsCollector,
    create_dual_metrics_collector
)
from .system_metrics import (
    SystemMetricsCollector,
    ApplicationMetricsCollector,
    setup_all_metrics
)

__all__ = [
    'setup_logging',
    'setup_metrics_early',
    'get_metrics_collector',
    'MetricsCollector',
    'HealthCheckManager',
    'FastAPIHealthChecker',
    'create_health_manager',
    'setup_fastapi_health_checks',
    'setup_otel_logging',
    'add_log_context',
    'get_current_trace_context',
    'StructlogOTELProcessor',
    'setup_otel_metrics',
    'OTelMetricsCollector',
    'create_dual_metrics_collector',
    'SystemMetricsCollector',
    'ApplicationMetricsCollector',
    'setup_all_metrics'
]