Observer Fields

edit

An observer is defined as a special network, security, or application device used to detect, observe, or create network, security, or application-related events and metrics.

This could be a custom hardware appliance or a server that has been configured to run special network, security, or application software. Examples include firewalls, web proxies, intrusion detection/prevention systems, network monitoring sensors, web application firewalls, data loss prevention systems, and APM servers. The observer.* fields shall be populated with details of the system, if any, that detects, observes and/or creates a network, security, or application event or metric. Message queues and ETL components used in processing events or metrics are not considered observers in ECS.

Observer Field Details

edit
Field Description Level

observer.egress

Observer.egress holds information like interface number and name, vlan, and zone information to classify egress traffic. Single armed monitoring such as a network sensor on a span port should only use observer.ingress to categorize traffic.

type: object

extended

observer.egress.zone

Network zone of outbound traffic as reported by the observer to categorize the destination area of egress traffic, e.g. Internal, External, DMZ, HR, Legal, etc.

type: keyword

example: Public_Internet

extended

observer.hostname

Hostname of the observer.

type: keyword

core

observer.ingress

Observer.ingress holds information like interface number and name, vlan, and zone information to classify ingress traffic. Single armed monitoring such as a network sensor on a span port should only use observer.ingress to categorize traffic.

type: object

extended

observer.ingress.zone

Network zone of incoming traffic as reported by the observer to categorize the source area of ingress traffic. e.g. internal, External, DMZ, HR, Legal, etc.

type: keyword

example: DMZ

extended

observer.ip

IP addresses of the observer.

type: ip

Note: this field should contain an array of values.

core

observer.mac

MAC addresses of the observer.

The notation format from RFC 7042 is suggested: Each octet (that is, 8-bit byte) is represented by two [uppercase] hexadecimal digits giving the value of the octet as an unsigned integer. Successive octets are separated by a hyphen.

type: keyword

Note: this field should contain an array of values.

example: ["00-00-5E-00-53-23", "00-00-5E-00-53-24"]

core

observer.name

Custom name of the observer.

This is a name that can be given to an observer. This can be helpful for example if multiple firewalls of the same model are used in an organization.

If no custom name is needed, the field can be left empty.

type: keyword

example: 1_proxySG

extended

observer.product

The product name of the observer.

type: keyword

example: s200

extended

observer.serial_number

Observer serial number.

type: keyword

extended

observer.type

The type of the observer the data is coming from.

There is no predefined list of observer types. Some examples are forwarder, firewall, ids, ips, proxy, poller, sensor, APM server.

type: keyword

example: firewall

core

observer.vendor

Vendor name of the observer.

type: keyword

example: Symantec

core

observer.version

Observer version.

type: keyword

core

Field Reuse

edit
Field sets that can be nested under Observer
edit
Field Set Location Description

interface

observer.egress.interface.*

Fields to describe observer interface information.

vlan

observer.egress.vlan.*

Fields to describe observed VLAN information.

geo

observer.geo.*

Fields describing a location.

interface

observer.ingress.interface.*

Fields to describe observer interface information.

vlan

observer.ingress.vlan.*

Fields to describe observed VLAN information.

os

observer.os.*

OS fields contain information about the operating system.