// Falcon Next-Gen SIEM readiness: do third-party sources arrive with the fields the hunts need? (The Tokyo Nomad, 4 Nov 2026) // Read-only. REQUIRED time picker: last 1 hour. Static review only; not executed in a live Falcon tenant. // Replace the parser names with yours (identity, web/WAF, firewall/proxy). Fields follow the parsers' ECS-style names. // A parser with no rows, or with few rows carrying a user agent or source IP, is a coverage gap. in(field="#type", values=["REPLACE_WITH_IDENTITY_PARSER", "REPLACE_WITH_WEB_PARSER", "REPLACE_WITH_FIREWALL_PARSER"]) | case { user_agent.original=* | HasUA := 1 ; * | HasUA := 0 ; } | case { source.ip=* | HasIP := 1 ; * | HasIP := 0 ; } | case { user.name=* | HasUser := 1 ; * | HasUser := 0 ; } | groupBy([#type], function=[count(as=Events), sum(HasUA, as=WithUserAgent), sum(HasIP, as=WithSourceIP), sum(HasUser, as=WithUser), max(@timestamp, as=LastSeen)], limit=100) | LastSeenUTC := formatTime("%Y-%m-%d %H:%M", field=LastSeen, timezone="UTC") | select([#type, Events, WithUserAgent, WithSourceIP, WithUser, LastSeenUTC])