Marc Schäfer
166335b30d
refactor(telemetry): reduce cognitive complexity by splitting registerInstruments and Init; add unregister stoppers; extract state_view helpers
...
Former-commit-id: ee2f8899ff545abba1f6e37fc9ed240f9311ff0a
2025-10-08 01:06:13 +02:00
Marc Schäfer
781ab23aef
docs(README): add Observability Quickstart section and link to docs/observability.md
...
Former-commit-id: 744a74155610529e339b60d5d59a8217524bbd01
2025-10-08 01:01:33 +02:00
Marc Schäfer
38b52b0fbd
docs: add Quickstart in observability; examples: add docker-compose.metrics.collector.yml and prometheus.with-collector.yml (collector-only scrape)
...
Former-commit-id: aea80200e002a31e60ba94da551411804b2d8db3
2025-10-08 00:58:30 +02:00
Marc Schäfer
9db7da4426
feat(metrics): NEWT_METRICS_INCLUDE_TUNNEL_ID toggle; conditionally drop tunnel_id across bytes/sessions/proxy/reconnect; docs and smoke test updated; examples/prometheus.yml with relabels; docker-compose defaults avoid double-scrape
...
Former-commit-id: b20f7a02b2fe861d27111f8c7716a225866ee025
2025-10-08 00:53:40 +02:00
Marc Schäfer
9f682c3a5f
fix(telemetry): adapt to RegisterCallback returning (Registration, error)
...
Former-commit-id: f28d90595ba47cbb54c3b8a1515da7cd0c47400f
2025-10-08 00:46:41 +02:00
Marc Schäfer
7f6d518604
docs+examples: document direction=ingress|egress, initiator and error_type enums; add cardinality relabel tips; provide Collector variants; add scripts/smoke-metrics.sh
...
Former-commit-id: 4a90e36a442afbb46fe3c027eae205d11bf02d62
2025-10-08 00:46:01 +02:00
Marc Schäfer
eb87b24d13
fix(metrics): direction=ingress|egress for bytes; remove transport on tunnel_sessions; extend allow-list (msg_type, phase); add units for histograms and bytes; handle callback errors; normalize error_type taxonomy; HTTP error mapping to enums
...
Former-commit-id: 9ace45e71f388477d493eb87d9b9758d4a43290e
2025-10-08 00:43:53 +02:00
Marc Schäfer
967e8e6e4b
fix: update IncReconnect for auth failures; import metric in proxy manager for observable callback
...
Former-commit-id: 75d5e695d623fe292acceb586d2ecd6fb0052308
2025-10-08 00:32:39 +02:00
Marc Schäfer
61489d46cd
feat(phase2): websocket connect latency and message counters; proxy active/buffer/drops gauges and counters; config apply histogram; reconnect initiator label; update call-sites
...
Former-commit-id: d74065a71b0b9558caeab5ede4bc0c05a483692e
2025-10-08 00:30:07 +02:00
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: f86031f4583575fe885ddab8eeeff6477802b47c
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: 31f70e50320ada1b37044158d8cbfe48d9748391
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: 31514f26df6684b3b7359951754ef49e5f2e5994
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: 09fcb369633f3b3e69ba666514c8477aa7d8cd4d
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: 83c3ae5cf950416fe4d72ba8ead309c183487a21
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: 1e88fb86b40ec6c774a8f1a7e7f01ddad8787ffc
2025-10-08 00:09:17 +02:00
Marc Schäfer
f6be21c816
remove: removed test results
...
Former-commit-id: 62407b0c740168623a8b27d4f71c357954d225e5
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: d91c6ef1689922799125d25db8ac841f41ff3fd6
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: 59e8d79404f57428ecf2f38111b685c3608238e5
2025-10-07 23:55:47 +02:00
Marc Schäfer
8e2f2b5acb
fix: Remove unnecessary blank line in prometheus.yml
...
Former-commit-id: d907ae9e84637cd8976915983c5734f7d96acb7a
2025-10-07 23:55:23 +02:00
Marc Schäfer
c03f64a524
feat: Add Grafana dashboard and Prometheus datasource configuration files
...
Former-commit-id: d745aa79d4c0873c709d31aade0fc510f8198b7b
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: 427ab67bb5391670092669f482a2859f9e493cc5
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: a86b14d97dbea5610705141fa8b8b6fea625b036
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: f8fd8e1bc50924a8dda0228624f616a599aaf00a
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: 0b5e662abc9b269e8e7e4c9a018ed1c020734288
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: bd55269b39131a111c5070c763bf9d1718b1f2f0
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: 3e9c74a65b1a9170cccab56b5d224ccd28e494ac
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: 922591b26928d3125977e13e5d9cdf5b87cff3a8
2025-10-07 11:36:23 +02:00
Marc Schäfer
a3c20711a3
chore: No code changes made to the Dockerfile
...
Former-commit-id: cfe52caa4a89db9fb4e4ec2eaf8e473106d81cce
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: d31d08c1c8d08ac62d973e004ba63d71e1d1af97
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: 9ac4cee48d55b0636c0bcd6ba998828f49e89703
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: b53fb70778908560154c56323d7cc0e136186c88
2025-10-07 09:17:05 +02:00
Marc Schäfer
e7ed6a4a03
Add OpenTelemetry configuration and observability documentation
...
Former-commit-id: 0f83489f11c74f04561ce996f43652d24dd59f9f
2025-10-07 09:16:44 +02:00
Marc Schäfer
984320dc27
Implement TelemetryView for thread-safe session management and observability
...
Former-commit-id: 09e9bd9493b9e52df854772992ee5c5390b49e22
2025-10-07 09:16:17 +02:00
Marc Schäfer
5fba5a110c
Add telemetry metrics and constants for improved observability
...
Former-commit-id: 2d4f656852f69cc5466ba76363d8301f07aec354
2025-10-07 09:15:36 +02:00
Marc Schäfer
003b020037
Refactor WireGuard and netstack services for telemetry integration
...
Former-commit-id: 8f7f9c417ce3e68fa2a2cc08a364a5ab5aaab671
2025-10-07 09:13:05 +02:00
Marc Schäfer
f35ec7e014
Instrument authentication and WebSocket connection logic for telemetry events
...
Former-commit-id: 660adcc72d12d7b3466d65750032c5c3c3a74a21
2025-10-07 09:13:04 +02:00
Marc Schäfer
1092c64e15
Add tunnel latency and reconnect telemetry to ping logic
...
Former-commit-id: 0d55e35784b850fd8847a46fe1653d69c1466e1e
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: ceef228665e88233b159b9273adf75d454ea4723
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: 496ff0734c9d476927fd4e51b641a0891ddb06bd
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: a89f13870ca11ab6813a668228123efee42da229
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: 85394d3255d1f7c22e21f2b87d4619da6fc6ae21
2025-10-07 09:13:02 +02:00
Marc Schäfer
26d78f749a
Expose admin/metrics endpoint in Dockerfile
...
Former-commit-id: 0405aebb45490da598bd1bb70026893d39670a06
2025-10-07 09:13:02 +02:00
Marc Schäfer
d96389a227
Update dependencies for telemetry and metrics support
...
Former-commit-id: 9c0f4599b8667d6955b0c32ae549d81f66a05598
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