rename Test file and add init file for metric backend to import all at once

This commit is contained in:
2026-04-04 22:26:19 +02:00
parent 043d7654f9
commit 2b8f0396e3
4 changed files with 14 additions and 6 deletions
+1 -4
View File
@@ -1,7 +1,4 @@
from .backends.Template import StoreTemplate
from .backends.Memory import MemoryMetricsStore
from .backends.Redis import RedisMetricsStore
from .backends import StoreTemplate, MemoryMetricsStore, RedisMetricsStore
from .MetricsCollector import MetricsCollector
+8 -2
View File
@@ -1,13 +1,19 @@
from typing import Any, Awaitable, cast
import inspect, os
import inspect, time, os
class StoreTemplate:
def __init__(self, backend:str="memory", key_prefix:str="snake:metrics:worker", worker_id:str|None=None, **kwargs):
self.backend = (backend or "memory").strip().lower()
self.key_prefix = key_prefix
self.worker_id = worker_id or f"{os.getpid()}"
self.worker_id = worker_id or f"{os.getpid()}-{int(time.time() * 1000)}"
self.store = self
async def publish(self, worker_id:str, snapshot:dict) -> None:
raise NotImplementedError
async def load_all(self) -> list[dict]:
raise NotImplementedError
async def publish_only(self, snapshot:dict) -> None:
await self.store.publish(self.worker_id, snapshot)
+3
View File
@@ -0,0 +1,3 @@
from .Template import StoreTemplate
from .Memory import MemoryMetricsStore
from .Redis import RedisMetricsStore
@@ -1,4 +1,5 @@
import unittest
from typing import Any, cast
from server.metrics import (
@@ -162,6 +163,7 @@ class TestMetricsStoreTemplate(unittest.IsolatedAsyncioTestCase):
allowed = await manager.acquire_startup_cleanup_lock(180)
self.assertTrue(allowed)
self.assertEqual(fake_store.calls, [("snake:metrics:worker:startup_cleanup_lock", 180)])
await manager.close()
if __name__ == "__main__":