Vincent Bernat
200ce95b46
flow: also increase timings
...
A bit concerned about the Gitlab runner...
2022-03-23 16:31:16 +01:00
Vincent Bernat
1980a08112
global: in Stop(), ensure we use only one defer
...
Otherwise, the order may be incorrect.
2022-03-23 00:18:33 +01:00
Vincent Bernat
bb1ce0fde5
flow: add a metric when the internal queue is full
...
This gives a good hint if there is a problem. Maybe we don't need to
optimize more.
2022-03-22 23:21:08 +01:00
Vincent Bernat
cf1fe53511
flow: rename buffer-length option to buffer-size
...
It is a better match. I was worried people would understand the size
as in bytes, but we also say a channel size.
2022-03-22 22:43:36 +01:00
Vincent Bernat
ccd839ef97
flow: move schemas into a dedicated directory
...
This helps exposing them with docker-compose.
2022-03-20 22:01:31 +01:00
Vincent Bernat
41131fca96
flow: introduce versioned flows
...
We need to version flow schemas. Otherwise, this won't be manageable.
Confluent is pushing for a registry, but it seems the ecosystem is
still too young. Let's version on our side with a topic for each
version.
2022-03-20 22:01:31 +01:00
Vincent Bernat
be0d510b12
clickhouse: add a new Clickhouse component to help setting Clickhouse
2022-03-20 22:01:31 +01:00
Vincent Bernat
417670da80
all: move most endpoints to /api/v0
2022-03-19 17:34:14 +01:00
Vincent Bernat
109af76227
metrics: be more precise with idle/busy times
2022-03-19 14:45:40 +01:00
Vincent Bernat
68977311b5
metrics: follow Prometheus conventions for metrics
...
See https://prometheus.io/docs/practices/naming/
2022-03-19 14:26:53 +01:00
Vincent Bernat
caa40005b9
metrics: report idle/busy time when using workers
2022-03-19 14:08:59 +01:00
Vincent Bernat
154c5103fb
flow: encode boundary as a string for JSON
...
This is only used for debugging.
2022-03-18 15:32:03 +01:00
Vincent Bernat
7728c3089d
core: add classification support
2022-03-18 13:36:27 +01:00
Vincent Bernat
6a9e1ff438
snmp: also collect interface speed
2022-03-17 10:22:36 +01:00
Vincent Bernat
efb5612647
flow: update GoFlow2 to get proper sampling rate
...
Also test we get the sampling rate. And don't send flows without
sampling rate.
2022-03-14 22:03:01 +01:00
Vincent Bernat
e2108c5030
snmp/core: also retrieve system name and put it in the flow
2022-03-14 18:53:12 +01:00
Vincent Bernat
be72294306
global: rename host/router to "sampler"
2022-03-14 16:19:36 +01:00
Vincent Bernat
7cd5b108d6
flow: ensure exported IP addresses are always IPv6
...
The EType field can help identify them if we don't want to mangle
with the prefix.
2022-03-14 13:47:07 +01:00
Vincent Bernat
d655aaf9dd
flow: ensure flow decoder stops when dying
2022-03-11 16:23:26 +01:00
Vincent Bernat
1a0de12d43
common: make each component tell when it is starting and stopping
2022-03-11 16:11:09 +01:00
Vincent Bernat
b09d13865a
core: encode IP addresses as string for JSON output
2022-03-11 15:43:26 +01:00
Vincent Bernat
656a8004f4
core: add a /flows endpoint for debug
2022-03-11 15:25:24 +01:00
Vincent Bernat
384345c0bf
core: add an /healthcheck endpoint
2022-03-11 14:07:45 +01:00
Vincent Bernat
9000c1d20a
flow: expose flow.proto file to HTTP
2022-03-09 08:28:37 +01:00
Vincent Bernat
839b757243
core: initial import
2022-03-08 19:18:10 +01:00
Vincent Bernat
004adec481
metrics: normalize label name for remote host (to router)
2022-03-08 17:24:31 +01:00
Vincent Bernat
88603f759d
flow: use our own format
2022-03-08 17:23:31 +01:00
Vincent Bernat
bf640dc92e
flow: add a NewMock method for the flow package
...
And also takes automatically a port.
2022-03-08 16:20:41 +01:00
Vincent Bernat
a0100911fc
flow: use a channel to pass incoming flows
2022-03-08 16:20:41 +01:00
Vincent Bernat
faca5698b7
Rename to akvorado
2022-03-08 16:20:41 +01:00
Vincent Bernat
38e62b6d8c
flow: initial import
2022-03-08 07:51:10 +01:00