Commit Graph

434 Commits

Author SHA1 Message Date
Marc Schäfer
0e4e2a6ca2 docs: update observability catalog to include site_id labels and clarify transport vs protocol; add METRICS_RECOMMENDATIONS.md with roadmap and ops guidance
Former-commit-id: f86031f458
2025-10-08 00:10:54 +02:00
Marc Schäfer
0c51a6d498 test(telemetry): assert allowed attribute site_id appears in metrics exposition
Former-commit-id: 31f70e5032
2025-10-08 00:10:17 +02:00
Marc Schäfer
ab83c071f8 feat(proxy): add site_id (and optional region) to bytes attribute sets for tunnel metrics
Former-commit-id: 31514f26df
2025-10-08 00:10:03 +02:00
Marc Schäfer
f9b824d227 fix(main): remove duplicate ClearTunnelID/State and call telemetry.UpdateSiteInfo after resolving client ID
Former-commit-id: 09fcb36963
2025-10-08 00:09:44 +02:00
Marc Schäfer
cbc7931bc4 feat(telemetry/state_view): add site_id label to gauges and set tunnel_sessions transport=wireguard (no hardcoded tcp)
Former-commit-id: 83c3ae5cf9
2025-10-08 00:09:30 +02:00
Marc Schäfer
3461fe2e09 feat(telemetry,metrics): allow site_id/region in attribute filter; read site_id from NEWT_SITE_ID/NEWT_ID or OTEL_RESOURCE_ATTRIBUTES; propagate site_id/region labels across metrics; include site labels in build_info; seed global site info
Former-commit-id: 1e88fb86b4
2025-10-08 00:09:17 +02:00
Marc Schäfer
f6be21c816 remove: removed test results
Former-commit-id: 62407b0c74
2025-10-08 00:02:44 +02:00
Marc Schäfer
7d62b6ceb3 fix: Update observability documentation to correct code block syntax and improve clarity
Former-commit-id: d91c6ef168
2025-10-08 00:00:56 +02:00
Marc Schäfer
27342ddf18 chore: Update docker-compose.metrics.yml for improved service configuration
Former-commit-id: 59e8d79404
2025-10-07 23:55:47 +02:00
Marc Schäfer
8e2f2b5acb fix: Remove unnecessary blank line in prometheus.yml
Former-commit-id: d907ae9e84
2025-10-07 23:55:23 +02:00
Marc Schäfer
c03f64a524 feat: Add Grafana dashboard and Prometheus datasource configuration files
Former-commit-id: d745aa79d4
2025-10-07 18:45:40 +02:00
Marc Schäfer
20068aa974 fix: Update observability documentation to clarify resource attributes and scraping strategy
Former-commit-id: 427ab67bb5
2025-10-07 18:45:02 +02:00
Marc Schäfer
2a80d1fd45 refactor: Simplify telemetry metrics by removing site_id and enhancing tunnel_id usage
Former-commit-id: a86b14d97d
2025-10-07 18:43:09 +02:00
Marc Schäfer
1561554fec fix: Update otel-collector.yaml and docker-compose to correct endpoint configurations and enhance resource detection
Former-commit-id: f8fd8e1bc5
2025-10-07 17:53:55 +02:00
Marc Schäfer
2f3be0a543 fix: Update otel-collector.yaml to correct resource attribute checks and streamline processor/exporter configuration
Former-commit-id: 0b5e662abc
2025-10-07 12:37:44 +02:00
Marc Schäfer
06963e01fc feat: Add .env.example file and update docker-compose to use environment variables
Former-commit-id: bd55269b39
2025-10-07 12:37:16 +02:00
Marc Schäfer
f859430fcd chore: Update OpenTelemetry collector image to version 0.136.0
Former-commit-id: 3e9c74a65b
2025-10-07 11:51:13 +02:00
Marc Schäfer
cf7ae26a39 chore: Update Dockerfile to enhance Go proxy settings and optimize build process
Former-commit-id: 922591b269
2025-10-07 11:36:23 +02:00
Marc Schäfer
a3c20711a3 chore: No code changes made to the Dockerfile
Former-commit-id: cfe52caa4a
2025-10-07 11:30:53 +02:00
Marc Schäfer
8dc644ca48 feat: Update Dockerfile to include installation of git and ca-certificates
Former-commit-id: d31d08c1c8
2025-10-07 11:25:07 +02:00
Marc Schäfer
044fd996fb feat: Add Docker Compose configuration for OpenTelemetry collector and Prometheus
Former-commit-id: 9ac4cee48d
2025-10-07 11:09:20 +02:00
Marc Schäfer
172b2816db feat: Implement telemetry for reconnect reasons and RTT reporting
- Added telemetry hooks to track reconnect reasons for WireGuard connections, including server requests and authentication errors.
- Introduced RTT reporting to telemetry for better latency monitoring.
- Enhanced metrics configuration with flags for Prometheus and OTLP exporters.
- Implemented graceful shutdown and signal handling in the main application.
- Updated WebSocket client to classify connection errors and report them to telemetry.
- Added support for async byte counting in metrics.
- Improved handling of reconnect scenarios in the WireGuard service.
- Added documentation for applying patches and rollback procedures.


Former-commit-id: b53fb70778
2025-10-07 09:17:05 +02:00
Marc Schäfer
e7ed6a4a03 Add OpenTelemetry configuration and observability documentation
Former-commit-id: 0f83489f11
2025-10-07 09:16:44 +02:00
Marc Schäfer
984320dc27 Implement TelemetryView for thread-safe session management and observability
Former-commit-id: 09e9bd9493
2025-10-07 09:16:17 +02:00
Marc Schäfer
5fba5a110c Add telemetry metrics and constants for improved observability
Former-commit-id: 2d4f656852
2025-10-07 09:15:36 +02:00
Marc Schäfer
003b020037 Refactor WireGuard and netstack services for telemetry integration
Former-commit-id: 8f7f9c417c
2025-10-07 09:13:05 +02:00
Marc Schäfer
f35ec7e014 Instrument authentication and WebSocket connection logic for telemetry events
Former-commit-id: 660adcc72d
2025-10-07 09:13:04 +02:00
Marc Schäfer
1092c64e15 Add tunnel latency and reconnect telemetry to ping logic
Former-commit-id: 0d55e35784
2025-10-07 09:13:04 +02:00
Marc Schäfer
b0be472cc0 Refactor ProxyManager for per-tunnel metrics, async bytes collection, and session counting
Former-commit-id: ceef228665
2025-10-07 09:13:03 +02:00
Marc Schäfer
88c7fa097e Integrate tunnel metrics and telemetry reporting throughout main application logic
Former-commit-id: 496ff0734c
2025-10-07 09:13:03 +02:00
Marc Schäfer
845bb0a09f Initialize telemetry and start admin HTTP server for metrics export
Former-commit-id: a89f13870c
2025-10-07 09:13:03 +02:00
Marc Schäfer
5d175ea926 Add flags and environment variables for telemetry and metrics configuration
Former-commit-id: 85394d3255
2025-10-07 09:13:02 +02:00
Marc Schäfer
26d78f749a Expose admin/metrics endpoint in Dockerfile
Former-commit-id: 0405aebb45
2025-10-07 09:13:02 +02:00
Marc Schäfer
d96389a227 Update dependencies for telemetry and metrics support
Former-commit-id: 9c0f4599b8
2025-10-07 09:13:01 +02:00
Marc Schäfer
3c2a1b9235 Merge pull request #1 from marcschaeferger/dependabot/go_modules/golang.org/x/net-0.44.0
Bump golang.org/x/net from 0.43.0 to 0.44.0

Former-commit-id: fd6b1ae323
2025-09-21 21:47:59 +02:00
Marc Schäfer
e3eab6849d Merge pull request #2 from marcschaeferger/dependabot/go_modules/golang.org/x/crypto-0.42.0
Bump golang.org/x/crypto from 0.41.0 to 0.42.0

Former-commit-id: 831ae2d9c5
2025-09-21 21:47:45 +02:00
dependabot[bot]
b0de64cb67 Bump golang.org/x/crypto from 0.41.0 to 0.42.0
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.41.0 to 0.42.0.
- [Commits](https://github.com/golang/crypto/compare/v0.41.0...v0.42.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-version: 0.42.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Former-commit-id: a63a27e3ab
2025-09-21 19:40:14 +00:00
dependabot[bot]
2a54a867a4 Bump golang.org/x/net from 0.43.0 to 0.44.0
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.43.0 to 0.44.0.
- [Commits](https://github.com/golang/net/compare/v0.43.0...v0.44.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-version: 0.44.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Former-commit-id: 34d558a5a2
2025-09-21 19:40:11 +00:00
Marc Schäfer
9a03dbbe12 feat(Docs): Add License Badge and PkgGo Badge
Former-commit-id: a08a3b9665
2025-09-19 16:34:44 +02:00
Marc Schäfer
3208e42c69 feat(Docs): Addding GoReport Badge
Former-commit-id: 0fc13be413
2025-09-19 16:25:04 +02:00
Owen Schwartz
594748cb74 Merge pull request #129 from l3pr-org/main
Implement more privacy-respecting DNS service

Former-commit-id: 58412a7a61
2025-09-04 10:39:33 -07:00
Stanley Wisnioski
6f71f0345b Update README.md
Updated README.md to reflect change of default DNS server from Google to Quad9.

Former-commit-id: 2675b812aa
2025-09-04 10:03:58 -04:00
Stanley Wisnioski
d97cf01ad4 Change DNS Server in clients.go
Changed DNS server from Google (8.8.8.8) to Quad9 (9.9.9.9)

Former-commit-id: 217a9346c6
2025-09-04 10:00:48 -04:00
Stanley Wisnioski
39ee3d05aa Change DNS Server
Changed DNS server from Google (8.8.8.8) to Quad9 (9.9.9.9)

Former-commit-id: eda8073bce
2025-09-04 09:58:43 -04:00
Owen
568b699c32 Ensure backward compatability with --docker-socket
Former-commit-id: 2969f9d2d6
1.4.4
2025-09-02 14:08:24 -07:00
Owen
c6f94945b8 Make sure to call stop function inside of clients
Former-commit-id: 502ebfc362
2025-09-01 15:45:23 -07:00
Owen
63e924a46b Limit the amount of times the send message sends
Fixes #115


Former-commit-id: 288413fd15
2025-09-01 11:53:46 -07:00
Owen
a6d8e71b7a Print the body for debug
Former-commit-id: 0ba44206b1
2025-09-01 11:51:23 -07:00
Owen
2c7841f285 Update docs with enforce-hc-cert
Former-commit-id: 3f8dcd8f22
2025-09-01 10:59:54 -07:00
Owen
1927e8b54a Allow health check to http self signed by default
Fixes #122


Former-commit-id: c5c0143013
2025-09-01 10:56:08 -07:00