Commit Graph

31 Commits

Author SHA1 Message Date
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