Commit Graph

3378 Commits

Author SHA1 Message Date
Vincent Bernat
45ab047c80 config: also listen to 4739 for IPFIX
This is the port defined in RFC 7011.
2025-08-29 08:12:30 +02:00
Vincent Bernat
a50c47a723 docker: send alloy and loki logs to Loki
Alloy is severely limited in this aspect. Maybe we should switch to
Vector instead.
2025-08-29 07:19:18 +02:00
Vincent Bernat
560113e3af docker: monitor Redis and Kafka using Alloy internal exporter 2025-08-28 11:52:45 +02:00
Vincent Bernat
0ad0128fc6 docker: add Loki Docker Compose file to .env 2025-08-28 10:57:17 +02:00
Vincent Bernat
c31e0616c3 docker: add Kafka and Redis logs to Loki 2025-08-28 06:54:29 +02:00
Vincent Bernat
45c684dc67 docker: add Loki to the observability stack
Currently, only Akvorado logs are parsed.
2025-08-28 06:54:13 +02:00
Vincent Bernat
528b0399c1 docs: explain dependency versioning 2025-08-27 08:44:23 +02:00
Vincent Bernat
866658bc70 outlet/kafka: fix crash when scaling down and up the workers
The same metrics cannot be registered twice. Introduce a new method in
reporter to unregister a previously registered collector.

Fix #1908
2025-08-27 08:28:14 +02:00
Vincent Bernat
fa11e7de6d common/reporter: simplify interface for collecting metrics
Remove unused methods and always collect scoped metrics. As a
side-effect, BioRIS gRPC metrics are now correctly scoped.
2025-08-27 07:37:38 +02:00
Vincent Bernat
3affecc309 Revert "docs: prepare for 2.0.0 release and squash the changelog"
This reverts commit 3bff625a56. We are not
ready yet to do a final release.
2025-08-26 23:59:57 +02:00
Vincent Bernat
39e9ba0777 docker: fix priority of console router to be the lowest 2025-08-26 23:35:05 +02:00
Vincent Bernat
8eb7cd63b1 docker: make Alloy configuration use only Docker labels
This is a bit like Traefik. We set metrics.port on each container we
want to scrape metrics from (and optionally metrics.path).

Semi-related, but we also rely on exposed port for Traefik and we override
it for all containers to be sure we select the right one. This is less
error prone as we need at least one exposed port and some containers may
or may not have one. Just always set an exposed port if we have metrics
or traefik rules.
2025-08-26 23:22:09 +02:00
Vincent Bernat
2d26c5b9ca inlet/kafka: use kfake for functional tests with Kafka
We keep the real Kafka for orchestrator and for OAuth test.
2025-08-26 10:58:24 +02:00
Vincent Bernat
291386b057 docs: fix unittest requiring an exact match on documentation 2025-08-26 08:39:48 +02:00
Vincent Bernat
06e3f334fd docs: proofread the whole documentation
Notably, more active voice and simplify a bit.
2025-08-26 08:25:57 +02:00
Vincent Bernat
f81299ff28 docker: group services together in alloy configuration 2025-08-26 07:04:04 +02:00
Vincent Bernat
3617645ace github: update labels for issues 2025-08-26 06:39:38 +02:00
Vincent Bernat
2b3c463729 docker: switch from prometheus to alloy for scrapping metrics
The idea is that alloy can also be used for more. For example, we could
introduce Loki (with a `docker-compose-loki.yml`) and it would use alloy
too. Alloy configuration needs to be split into several parts and both
`docker-compose-prometheus.yml` and `docker-compose-loki.yml` would
define it but with an additional volume for their specific part of the
configuration (using the `extend` mechanism).

However, we don't use the bundled Node Exporter, nor the bundled
cAdvisor. It is better to have individual components to avoid reduce the
amount of code with elevated privileges (both Node Exporter and cAdvisor
need specific privileges). Also, we keep Prometheus instead of switching
to the full Grafana stack with Mimir as it is a more common setup and
this is not a goal to provide something universally scalable.

Also, Prometheus is now behind the private endpoint as it is possible to
send metrics.
2025-08-26 06:28:56 +02:00
Vincent Bernat
ccc2474dc0 docs: let's consider outlet a new feature! 2025-08-25 09:02:54 +02:00
Vincent Bernat
3bff625a56 docs: prepare for 2.0.0 release and squash the changelog 2025-08-25 07:23:54 +02:00
vincentbernat
ddc58a5154 build: flake.lock automated update for nixpkgs 2025-08-25 07:12:23 +02:00
github-actions[bot]
4936028c4f build: update Nix dependency hashes 2025-08-25 04:04:16 +00:00
Vincent Bernat
fb8083aa88 build: update default.pgo 2025-08-24 15:14:28 +02:00
Vincent Bernat
c4a15e8353 console: better contrast for console outputs 2025-08-24 14:04:05 +02:00
Vincent Bernat
af745151fc console: update chroma to v2 2025-08-24 14:04:05 +02:00
Vincent Bernat
357733a7e4 build: don't cache bin in Gitlab
Not needed anymore.
2025-08-24 13:57:02 +02:00
尤理衡 (Li-Heng Yu)
6ab52f2687 docs: Added BMP for Arista 2025-08-24 13:35:47 +02:00
Vincent Bernat
8a7c5b0c0c build: remove Docker proxy configuration from Gitlab build
This does not seem to be our job to setup that.
2025-08-24 09:12:21 +02:00
Vincent Bernat
fe42529bbc build: switch to Go 1.25
But Go 1.24 is still supported.
2025-08-24 09:12:21 +02:00
Vincent Bernat
eeb93b948e build: change labels for Go/JS tests
The goal is to be able to see the Go version on the global graph, since
it is currently truncated by an ellipsis and the tooltip may be inexact,
because it seems to be a difficult thing to get correctly.
2025-08-24 08:54:48 +02:00
Vincent Bernat
c2ef22b3fc outlet/kafka: add more debugging to the worker scaling test 2025-08-24 08:38:32 +02:00
Vincent Bernat
4545321388 build: fix cache/save of IANA cache
We can't access the inputs of a step.
2025-08-24 08:24:41 +02:00
Vincent Bernat
25c386e461 build: bump github.com/oschwald/maxminddb-golang/v2 to 2.0.0-beta.10 2025-08-24 08:07:59 +02:00
Vincent Bernat
8d9d323710 Revert "outlet/kafka: pace a bit the worker test"
This reverts commit 0130119bdc. The timing
is a bit sensitive.
2025-08-23 17:32:07 +02:00
Vincent Bernat
0130119bdc outlet/kafka: pace a bit the worker test 2025-08-23 16:21:42 +02:00
Vincent Bernat
e2f1df9add tests: replace godebug by go-cmp for structure diffs
go-cmp is stricter and allow to catch more problems. Moreover, the
output is a bit nicer.
2025-08-23 16:03:09 +02:00
Vincent Bernat
1a09ba9e7c console/frontend: add extra padding at the bottom of documentation 2025-08-22 21:20:36 +02:00
Vincent Bernat
01c93fb2e3 build: correctly express how to build .pb.go files
We can't do something generic but we don't have to. Let's use a grouped
rule.
2025-08-22 21:17:10 +02:00
Vincent Bernat
04cec32cee build: fix cache key for saving IANA files 2025-08-21 11:11:51 +02:00
Vincent Bernat
8552b6dd57 build: prime Go and JS caches 2025-08-21 09:46:36 +02:00
Vincent Bernat
b28c8aa80a build: don't ignore bin/ when building Docker 2025-08-21 08:56:02 +02:00
Vincent Bernat
daaf419cef build: ensure proper caching of buf tool
We use a wrapper and we include it in the hash for setup-go
2025-08-21 08:34:15 +02:00
Vincent Bernat
7fd2bbb03f build: only save IANA files to cache if no hit 2025-08-21 08:09:12 +02:00
Vincent Bernat
31320f0df8 build: fix setup internal action schema
The "inputs" parameters are not typed. Dunno where I've found this. See https://docs.github.com/en/actions/reference/workflows-and-actions/metadata-syntax#inputs
2025-08-21 08:03:17 +02:00
Vincent Bernat
6d84e5f3f6 build: ensure BUILD_ARGS do not come from environment
Setting a variable prevents it to be overriden by the environment. User
can still override it from the command line.
2025-08-21 07:51:05 +02:00
Vincent Bernat
8f284ff461 build: use _ARGS as suffix for variables augmenting arguments in make 2025-08-21 07:51:05 +02:00
github-actions[bot]
08602d15c1 build: update Nix dependency hashes 2025-08-21 03:58:33 +00:00
Vincent Bernat
49ca086ae7 build: another tentative to make actions/cache/save work
The documentation is misleading and it seems this could be a good
practice to do this way. It's a waste of space, but hey...
2025-08-20 21:41:16 +02:00
Vincent Bernat
9bceb802fa build: don't take screenshots
Not really useful and it would require more invasive tools to get good
results (playwright for example)
2025-08-20 20:04:54 +02:00
Vincent Bernat
7377776a82 build: really provide arguments to Chrome for screenshots 2025-08-20 19:55:58 +02:00