diff --git a/src/service/core.py b/src/service/core.py index 3d7a5c1..996a4ce 100644 --- a/src/service/core.py +++ b/src/service/core.py @@ -56,6 +56,10 @@ def get_counter(name: str, documentation: str, labelnames: list[str]) -> Counter "Total bytes processed by the engine", [ "component_type", "component_id"]) +data_processed_lines_total = get_counter("data_processed_lines_total", + "Total lines processed by the engine", [ + "component_type", "component_id"]) + class Service(Engine, ABC): """Abstract base for every DetectMate service/component. @@ -183,6 +187,12 @@ def process(self, raw_message: bytes) -> bytes | None | Any: component_id=self.component_id ).inc(len(raw_message)) + lines = raw_message.count(b'\n') or 1 # at least 1 if message exists + data_processed_lines_total.labels( + component_type=self.component_type, + component_id=self.component_id + ).inc(lines) + # Track processing time with processing_duration_seconds.labels( component_type=self.component_type,