Skip to content

Commit 6cf2819

Browse files
authored
Merge pull request #64764 from skrthomas/JSON-updates
JSON flows format reference updates
2 parents 9d49c3e + dc4f81f commit 6cf2819

File tree

1 file changed

+169
-18
lines changed

1 file changed

+169
-18
lines changed

modules/network-observability-flows-format.adoc

Lines changed: 169 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,17 @@
1-
// Automatically generated by 'hack/asciidoc-flows-gen.sh'. Do not edit.
2-
// Module included in the following assemblies:
3-
// json-flows-format-reference.adoc
4-
1+
// Automatically generated by 'hack/asciidoc-flows-gen.sh'. Do not edit, or make the NETOBSERV team aware of the editions.
52
:_content-type: REFERENCE
63
[id="network-observability-flows-format_{context}"]
74
= Network Flows format reference
5+
6+
This is the specification of the network flows format, used both internally and when exporting flows to Kafka.
7+
88
The document is organized in two main categories: _Labels_ and regular _Fields_. This distinction only matters when querying Loki. This is because _Labels_, unlike _Fields_, must be used in link:https://grafana.com/docs/loki/latest/logql/log_queries/#log-stream-selector[stream selectors].
99

10-
If you are reading this specification as a reference for the Kafka export feature, you must treat all _Labels_ and _Fields_ as regualr fields and ignore any distinctions between them that are specific to Loki.
10+
If you are reading this specification as a reference for the Kafka export feature, you must treat all _Labels_ and _Fields_ as regular fields and ignore any distinctions between them that are specific to Loki.
1111

1212

1313
== Labels
1414

15-
'''
1615

1716
SrcK8S_Namespace::
1817

@@ -48,7 +47,7 @@ Destination owner, such as Deployment, StatefulSet, etc.
4847

4948
FlowDirection::
5049

51-
• *FlowDirection*: see the following section, _Enumeration: FlowDirection_ for more details.
50+
• *FlowDirection*: `FlowDirection` (see the following section, Enumeration: FlowDirection)
5251

5352
Flow direction from the node observation point
5453

@@ -61,9 +60,9 @@ _RecordType::
6160
Type of record: 'flowLog' for regular flow logs, or 'allConnections',
6261
'newConnection', 'heartbeat', 'endConnection' for conversation tracking
6362

63+
6464
== Fields
6565

66-
'''
6766

6867
SrcAddr::
6968

@@ -131,15 +130,15 @@ Kind of the destination matched Kubernetes object, such as Pod name, Service nam
131130

132131
SrcPort::
133132

134-
• *SrcPort*: `number`
133+
`Optional` *SrcPort*: `number`
135134

136135
Source port
137136

138137
'''
139138

140139
DstPort::
141140

142-
• *DstPort*: `number`
141+
`Optional` *DstPort*: `number`
143142

144143
Destination port
145144

@@ -208,12 +207,28 @@ Interface::
208207
Network interface
209208

210209
'''
211-
Packets::
212210

213-
• *Packets*: `number`
211+
IfDirection::
214212

215-
Number of packets in this flow
213+
• `Optional` *IfDirection*: `InterfaceDirection` (see the following section, Enumeration: InterfaceDirection)
216214

215+
Flow direction from the network interface observation point
216+
217+
'''
218+
219+
Flags::
220+
221+
• `Optional` *Flags*: `number`
222+
223+
TCP flags
224+
225+
'''
226+
227+
Packets::
228+
229+
• `Optional` *Packets*: `number`
230+
231+
Number of packets
217232

218233
'''
219234

@@ -235,9 +250,9 @@ In conversation tracking, B to A packets counter per conversation
235250

236251
Bytes::
237252

238-
• *Bytes*: `number`
253+
`Optional` *Bytes*: `number`
239254

240-
Number of bytes in this flow
255+
Number of bytes
241256

242257
'''
243258

@@ -257,6 +272,126 @@ In conversation tracking, B to A bytes counter per conversation
257272

258273
'''
259274

275+
IcmpType::
276+
277+
• `Optional` *IcmpType*: `number`
278+
279+
ICMP type
280+
281+
'''
282+
283+
IcmpCode::
284+
285+
• `Optional` *IcmpCode*: `number`
286+
287+
ICMP code
288+
289+
'''
290+
291+
PktDropLatestState::
292+
293+
• `Optional` *PktDropLatestState*: `string`
294+
295+
Pkt TCP state for drops
296+
297+
'''
298+
299+
PktDropLatestDropCause::
300+
301+
• `Optional` *PktDropLatestDropCause*: `string`
302+
303+
Pkt cause for drops
304+
305+
'''
306+
307+
PktDropLatestFlags::
308+
309+
• `Optional` *PktDropLatestFlags*: `number`
310+
311+
Pkt TCP flags for drops
312+
313+
'''
314+
315+
PktDropPackets::
316+
317+
• `Optional` *PktDropPackets*: `number`
318+
319+
Number of packets dropped by the kernel
320+
321+
'''
322+
323+
PktDropPackets_AB::
324+
325+
• `Optional` *PktDropPackets_AB*: `number`
326+
327+
In conversation tracking, A to B packets dropped counter per conversation
328+
329+
'''
330+
331+
PktDropPackets_BA::
332+
333+
• `Optional` *PktDropPackets_BA*: `number`
334+
335+
In conversation tracking, B to A packets dropped counter per conversation
336+
337+
'''
338+
339+
PktDropBytes::
340+
341+
• `Optional` *PktDropBytes*: `number`
342+
343+
Number of bytes dropped by the kernel
344+
345+
'''
346+
347+
PktDropBytes_AB::
348+
349+
• `Optional` *PktDropBytes_AB*: `number`
350+
351+
In conversation tracking, A to B bytes dropped counter per conversation
352+
353+
'''
354+
355+
PktDropBytes_BA::
356+
357+
• `Optional` *PktDropBytes_BA*: `number`
358+
359+
In conversation tracking, B to A bytes dropped counter per conversation
360+
361+
'''
362+
363+
DnsId::
364+
365+
• `Optional` *DnsId*: `number`
366+
367+
DNS record id
368+
369+
'''
370+
371+
DnsFlags::
372+
373+
• `Optional` *DnsFlags*: `number`
374+
375+
DNS flags for DNS record
376+
377+
'''
378+
379+
DnsFlagsResponseCode::
380+
381+
• `Optional` *DnsFlagsResponseCode*: `string`
382+
383+
Parsed DNS header RCODEs name
384+
385+
'''
386+
387+
DnsLatencyMs::
388+
389+
• `Optional` *DnsLatencyMs*: `number`
390+
391+
Calculated time between response and request, in milliseconds
392+
393+
'''
394+
260395
TimeFlowStartMs::
261396

262397
• *TimeFlowStartMs*: `number`
@@ -281,6 +416,14 @@ Timestamp when this flow was received and processed by the flow collector, in se
281416

282417
'''
283418

419+
TimeFlowRttNs::
420+
421+
• `Optional` *TimeFlowRttNs*: `number`
422+
423+
Flow Round Trip Time (RTT) in nanoseconds
424+
425+
'''
426+
284427
_HashId::
285428

286429
• `Optional` *_HashId*: `string`
@@ -303,20 +446,28 @@ numFlowLogs::
303446

304447
In conversation tracking, a counter of flow logs per conversation
305448

449+
306450
== Enumeration: FlowDirection
307451

308-
'''
309452

310453
Ingress::
311454

312455
• *Ingress* = `"0"`
313456

314-
Incoming traffic, from node observation point
457+
Incoming traffic, from the node observation point
315458

316459
'''
317460

318461
Egress::
319462

320463
• *Egress* = `"1"`
321464

322-
Outgoing traffic, from node observation point
465+
Outgoing traffic, from the node observation point
466+
467+
'''
468+
469+
Inner::
470+
471+
• *Inner* = `"2"`
472+
473+
Inner traffic, with the same source and destination node

0 commit comments

Comments
 (0)