Standard Event Schema

To ensure consistency and allow rules to work across different data sources, the EventProcessor uses a standardized event schema. All filters should aim to map extracted data to these standard fields.

Event Structure

The core event object consists of several top-level metadata fields and three main namespaces: log, origin, and target.

Top-Level Metadata

Metadata fields that describe the event itself.

FieldDescription
idUnique identifier for the event (UUID).
@timestampThe time the event was processed by the engine in ISO8601 format.
deviceTimeThe original timestamp from the source device. If missing, it defaults to @timestamp.
dataTypeThe category of the log (e.g., syslog, wineventlog, linux, firewall-fortigate-traffic).
dataSourceThe specific source or integration name (e.g., o365-tenant-01).
tenantIdUnique ID of the organization the event belongs to.
tenantNameHuman-readable name of the tenant.
actionThe activity performed (e.g., login, file_create, connection).
actionResultThe outcome of the action (success, failure, denied).
protocolNetwork protocol used (e.g., tcp, udp, http).
connectionStatusStatus of the connection (e.g., established, closed).
statusCodeNumerical status if applicable (e.g., HTTP 404).
severityEvent importance (debug, info, warning, error, critical).
rawThe original, unmodified log message. Read-only.
complianceA map of regulatory tags (e.g., hipaa, pci, gdpr) with their associated values.
errorsA list of string descriptions for any issues encountered during processing.

Namespaces

1. log.* (Custom Data)

The log namespace is a dictionary used for storing any field that does not fit into the standard categories below.

  • Usage: log.my_custom_field, log.parsing_status.

2. origin.* and target.* (Sides)

Used to describe the "Who" and "Whom" of an event. Both namespaces support the same set of attributes.

Network Attributes

Column 1Column 2
ipIPv4 or IPv6 address.
hostHostname of the system.
Data 3-1Domain name or FQDN.
portNetwork port (integer).
macMAC address.
urlFull URL if applicable.
cidrClassless Inter-Domain Routing notation.
bytesSent / bytesReceivedVolume of data transferred.
packagesSent / packagesReceivedNumber of network packets.

Fingerprinting & Certificates

FieldDescription
certificateFingerprintHash of the SSL/TLS certificate.
ja3FingerprintTLS client fingerprint.
jarmFingerprintActive TLS server fingerprint.
sshBanner / sshFingerprintSSH service identification.

Identity & Communication

FieldDescription
userUsername or account identifier.
groupSecurity group or role.
email / emailAddressEmail address.
emailSubject / emailBodyEmail content metadata.
emailDisplayName / emailXMailerEmail client metadata.
emailThreadIndexPosition of the email in a conversation thread.
dkim / dkimSignatureEmail authentication data.
jabberId / cookieChat or Web session identifiers.

WHOIS

FieldDescription
whoisRegistrantThe person or entity that registered the domain.
whoisRegistrarThe company that manages the registration of the domain.

Process & File Attributes

FieldDescription
processName of the executable.
processStateCurrent state of the process.
commandFull command line executed.
windowsServiceNameLogical name of the service.
windowsServiceDisplayNameDisplay name of the service.
windowsScheduledTaskName of the scheduled task.
file / filenameBase filename.
pathFull directory path to the file.
sizeInBytesFile size in bytes.
mimeTypeFile MIME type.

Hashes

FieldDescription
hashGeneric hash (usually SHA256).
md5 / sha1 / sha224 / sha256Specific cryptographic hashes.
sha384 / sha512 / sha512224 / sha512256SHA-2 and variations.
sha3224 / sha3256 / sha3384 / sha3512SHA-3 variants.
authentihash / cdhashCode signing and OS specific hashes.
hex / base64Encoded representations.

System & Infrastructure

FieldDescription
operatingSystemOS name and version.
chromeExtensionBrowser extension ID.
mobileAppIdApplication ID for mobile platforms.
windowsServiceNameName of the Windows service.
windowsScheduledTaskName of the scheduled task.

Vulnerabilities & Malware

FieldDescription
cveCommon Vulnerabilities and Exposures ID.
cpeCommon Platform Enumeration.
malware / malwareFamilyName or family of detected malware.
malwareTypeType of malware (e.g., ransomware, trojan).

Resources & Monitoring (Nested under disks)

FieldDescription
connectionsCount of active connections (uint64).
usedCpuPercentCPU usage percentage (0-100).
usedMemPercentMemory usage percentage (0-100).
totalCpuUnitsTotal CPU capacity/units.
totalMemTotal physical memory in bytes.
disksList of disk objects (name, totalSpace, usedPercent).

Geolocation (Nested under origin.geolocation.* or target.geolocation.*)

FieldDescription
country / countryCodeCountry name and ISO code.
cityCity name.
latitude / longitudeGeographic coordinates.
asn / asoAutonomous System Number and Organization.
accuracyGeolocation accuracy radius.

Best Practices for Filtering

  1. Always Map IPs: If your log contains IP addresses, map them to origin.ip and target.ip.

  2. Normalize Actions: Use a consistent set of actions (e.g., login, logout, file_create).

  3. Enrich Early: Apply geolocation and threat intel (feeds) as soon as the core fields are mapped.

  4. Compliance Mapping: Use the compliance field for tagging logs with regulatory requirements (HIPAA, PCI-DSS, GDPR).

  5. Audit Integrity: The raw field is protected and contains the original log message. It cannot be deleted by parsing steps, ensuring a verifiable audit trail for every event.