forked from elastic/ecs
-
Notifications
You must be signed in to change notification settings - Fork 0
/
client.yml
121 lines (102 loc) · 4.05 KB
/
client.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
---
- name: client
title: Client
group: 2
short: Fields about the client side of a network connection, used with server.
description: >
A client is defined as the initiator of a network connection for events regarding sessions, connections, or bidirectional flow records.
For TCP events, the client is the initiator of the TCP connection that sends the SYN packet(s).
For other protocols, the client is generally the initiator or requestor in the network transaction.
Some systems use the term "originator" to refer the client in TCP connections.
The client fields describe details about the system acting as the client in the network event.
Client fields are usually populated in conjunction with server fields.
Client fields are generally not populated for packet-level events.
Client / server representations can add semantic context to an exchange,
which is helpful to visualize the data in certain situations.
If your context falls in that category, you should still ensure that source and destination are filled appropriately.
type: group
fields:
- name: address
level: extended
type: keyword
short: Client network address.
description: >
Some event client addresses are defined ambiguously. The event will
sometimes list an IP, a domain or a unix socket. You should always
store the raw address in the `.address` field.
Then it should be duplicated to `.ip` or `.domain`, depending on which
one it is.
- name: ip
level: core
type: ip
short: IP address of the client.
description: >
IP address of the client (IPv4 or IPv6).
- name: port
format: string
level: core
type: long
description: >
Port of the client.
- name: mac
level: core
type: keyword
description: >
MAC address of the client.
- name: domain
level: core
type: keyword
description: >
Client domain.
- name: registered_domain
level: extended
type: keyword
short: The highest registered client domain, stripped of the subdomain.
description: >
The highest registered client domain, stripped of the subdomain.
For example, the registered domain for "foo.google.com" is "google.com".
This value can be determined precisely with a list like the public
suffix list (http://publicsuffix.org). Trying to approximate this by
simply taking the last two labels will not work well for TLDs such as "co.uk".
example: google.com
- name: top_level_domain
level: extended
type: keyword
short: The effective top level domain (com, org, net, co.uk).
description: >
The effective top level domain (eTLD), also known as the domain suffix,
is the last part of the domain name.
For example, the top level domain for google.com is "com".
This value can be determined precisely with a list like the public
suffix list (http://publicsuffix.org). Trying to approximate this by
simply taking the last label will not work well for effective TLDs such as "co.uk".
example: co.uk
# Metrics
- name: bytes
format: bytes
level: core
type: long
example: 184
description: >
Bytes sent from the client to the server.
- name: packets
level: core
type: long
example: 12
description: >
Packets sent from the client to the server.
- name: nat.ip
level: extended
type: ip
short: Client NAT ip address
description: >
Translated IP of source based NAT sessions (e.g. internal client to internet).
Typically connections traversing load balancers, firewalls, or routers.
- name: nat.port
format: string
level: extended
type: long
short: Client NAT port
description: >
Translated port of source based NAT sessions (e.g. internal client to internet).
Typically connections traversing load balancers, firewalls, or routers.