Sam 3a34759094
Some checks failed
Build Simulation and Test / Run All Tests (push) Failing after 8m17s
Add core simulation components and configuration classes
Major rewrite.
2025-11-08 19:17:40 -06:00

28 lines
1.0 KiB
Python

"""Basic metrics collector for simulation statistics."""
from typing import Dict, Any
from .base_collector import BaseCollector
class MetricsCollector(BaseCollector):
"""Collects basic simulation metrics."""
def __init__(self, collection_interval: int = 100):
super().__init__(collection_interval)
def collect(self, simulation_core) -> Dict[str, Any]:
"""Collect basic metrics from simulation core."""
world_state = simulation_core.get_world_state()
return {
'timestamp': simulation_core.timing.last_tick_time,
'tick_count': world_state['tick_count'],
'actual_tps': world_state['actual_tps'],
'target_tps': world_state['target_tps'],
'speed_multiplier': world_state['speed_multiplier'],
'is_paused': world_state['is_paused'],
'sprint_mode': world_state['sprint_mode'],
'world_buffer': world_state['world_buffer'],
'entity_counts': world_state['entity_counts'],
'collection_type': 'metrics'
}