search_ip
Find every mention of a specific IP across Netmon's log and telemetry streams: syslog, Windows eventlog, Suricata EVE, aggregated NetFlow, and ARP.
Returns one bucket per stream with {total, samples}. Streams that 4xx (e.g. 403 from tag-scope) show up in skipped so a partial result is still actionable. The syslog/eventlog streams match the IP via an unindexed message substring scan; on a high-volume install they can time out and land in skipped with guidance (narrow hours, or use syslog_search/eventlog_search with a device_id) rather than stalling the call.
Params:
ip (required): IPv4 or IPv6 to correlate.
hours: lookback window (1-168, default 24).
per_stream: sample row cap per stream (1-100, default 10). The
totalper stream is always the full match count.streams: narrow the fan-out to a subset — any of ['syslog','eventlog','eve','netflow','arp']. Omit for all.
Permission + tag-scope checks run server-side; a tag-restricted user sees only rows for devices in their tag set.
Example (narrow + short window): search_ip({ip: "10.10.1.25", hours: 1, streams: ["syslog"], per_stream: 5})
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| ip | Yes | IPv4 or IPv6 address to correlate (e.g. '10.10.1.25'). | |
| hours | No | Lookback window in hours (1-168). Default 24. | |
| streams | No | Subset of streams to query. Omit to fan out to all. Valid values: 'syslog', 'eventlog', 'eve', 'netflow', 'arp'. | |
| per_stream | No | Max sample rows returned per stream (1-100). The `total` field per stream always reflects the full match count even when samples are truncated. Default 10. |