Project

General

Profile

Actions

Feature #4172

open

Split eve.json into multiple files based on alert severity

Added by Vlad Grigorescu almost 4 years ago. Updated 4 months ago.

Status:
New
Priority:
Normal
Assignee:
Target version:
Effort:
Difficulty:
Label:

Description

We currently have an overly complicated setup, which we'd love to see Suricata support out of the box. We split our eve.json alerts based on severity. High severity alerts (1-3) get logged to our centralized logging infrastructure. The other alerts are only stored on disk, in order to help with debugging or manual investigations, but so as to not overwhelm our logging infrastructure.

We currently use logstash to read in the eve.json file, and to write out eve_severityX.json files, which then get handled appropriately. Another nice benefit is that we can define per-file log rotation and retention policies. Due to their low volume, the severity 1 and 2 files can be kept almost indefinitely, while 4 and 5 are rotated and deleted much more aggressively.

Logstash does work for this, but it falls behind if there's a sudden burst of alerts, and we're doubling the disk I/O unnecessarily. There are other ways to achieve this, but they all add complexity and fragility to our setup.

We tied severity to "how much do we care about this alert," so this setup makes a lot of sense for us, but I'm open to other options if they help us split alerts in some fashion.


Related issues 1 (1 open0 closed)

Related to Suricata - Feature #821: conditional logging: output steeringNewCommunity TicketActions
Actions

Also available in: Atom PDF