poc4 wit rust

This commit is contained in:
Mateusz Gruszczyński
2026-08-16 15:34:53 +02:00
parent e5d344622e
commit 40474cdc59
29 changed files with 2692 additions and 159 deletions
+44
View File
@@ -27,6 +27,50 @@ class _Status:
class PrometheusMetricsTests(unittest.TestCase):
def test_render_exports_rust_receiver_quality_metrics(self):
stats = RuntimeStats()
metrics = PrometheusMetrics(
stats,
version="0.11.0",
mode="full",
started_at=datetime(2026, 8, 16, 6, 0, tzinfo=timezone.utc),
state_provider=lambda: {"components": {}, "features": {}},
flow_tracker=_Status(
engine="rust",
rcvbuf_bytes=67_108_864,
batch_size=256,
datagram_bytes=12288,
queue_capacity_batches=24,
queue_capacity_bytes=67_108_864,
queue_depth_batches=2,
queue_high_water_batches=9,
capture_efficiency_pct=99.9,
rx_thread_alive=True,
worker_thread_alive=True,
telemetry_age_ms=125,
process_alive=True,
ready=True,
kernel_udp_drops=7,
queue_dropped_datagrams=11,
truncated_datagrams=0,
telemetry_errors=0,
traffic_counters={
"bytes_total": 125_000_000,
"packets_total": 80_000,
},
),
)
rendered = metrics.render()
self.assertIn('mikrosuricata_tzsp_receiver_info{engine="rust"} 1', rendered)
self.assertIn("mikrosuricata_tzsp_receiver_rcvbuf_bytes 67108864", rendered)
self.assertIn("mikrosuricata_tzsp_receiver_batch_size 256", rendered)
self.assertIn("mikrosuricata_tzsp_receiver_queue_depth_batches 2", rendered)
self.assertIn("mikrosuricata_tzsp_receiver_capture_efficiency_pct 99.9", rendered)
self.assertIn("mikrosuricata_tzsp_receiver_kernel_udp_drops_total 7", rendered)
self.assertIn("mikrosuricata_tzsp_receiver_queue_dropped_datagrams_total 11", rendered)
self.assertIn('mikrosuricata_traffic_bytes_total{direction="total"} 125000000', rendered)
self.assertNotIn("mikrosuricata_flow_tracker_", rendered)
def test_render_exports_raw_runtime_suricata_and_in_memory_component_state(self):
stats = RuntimeStats()
stats.inc("tzsp_datagrams", 5)