add dynamic

This commit is contained in:
larssand
2026-06-18 21:48:32 +02:00
parent e45603eed7
commit 0e42e42c53
3 changed files with 70 additions and 1 deletions

35
tests/test_diagnostics.py Normal file
View File

@@ -0,0 +1,35 @@
import unittest
from fgai.logs import local_in_failures, parse_log_line, top_field_values
class DiagnosticTests(unittest.TestCase):
def test_local_in_failures_group_by_source_service_policy(self):
events = [
parse_log_line(
'type=traffic policytype="local-in-policy6" policyid=2 srcip=192.168.1.20 '
'service="udp/5353" msg="Connection Failed"'
),
parse_log_line(
'type=traffic policytype="local-in-policy6" policyid=2 srcip=192.168.1.20 '
'service="udp/5353" msg="Connection Failed"'
),
]
self.assertEqual(
local_in_failures(events),
[{"src_ip": "192.168.1.20", "service": "udp/5353", "policy": "2", "count": 2}],
)
def test_top_field_values_counts_values(self):
events = [
parse_log_line("srcip=1.1.1.1 service=https"),
parse_log_line("srcip=1.1.1.1 service=http"),
parse_log_line("srcip=8.8.8.8 service=http"),
]
self.assertEqual(top_field_values(events, "srcip", limit=1), [{"value": "1.1.1.1", "count": 2}])
if __name__ == "__main__":
unittest.main()