Nils Andreas Svee
|
11837195de
|
chore(deps): update rust dependencies
Update several crates including cc, cmake, fastrand, and quote to their latest versions to maintain up-to-date build tools and libraries.
|
2026-04-14 16:04:02 +07:00 |
|
renovate[bot]
|
706d93f146
|
chore(deps): update rust crate libc to v0.2.185
|
2026-04-14 16:00:57 +07:00 |
|
Nils Andreas Svee
|
7b0eb942ea
|
fix(deps): patch netlink-socket2 to support musl targets
Vendor netlink-socket2 to resolve compilation failures caused by direct struct-literal initialization of libc types on musl.
|
2026-04-14 15:00:49 +07:00 |
|
Nils Andreas Svee
|
5daccecc1d
|
fix(deps): update rust crate netlink-bindings to 0.3
Adjust netlink and traffic control logic to accommodate breaking API changes, including shifts from method calls to direct field access.
|
2026-04-14 13:09:50 +07:00 |
|
renovate[bot]
|
2c336799b8
|
fix(deps): update rust crate netlink-socket2 to 0.3
|
2026-04-14 12:07:32 +07:00 |
|
Nils Andreas Svee
|
8739ed4419
|
fix(metrics): use AtomicU32 for drop counter to support MIPS targets
Also bumps version to 0.4.1.
v0.4.1
|
2026-04-14 02:14:55 +07:00 |
|
Nils Andreas Svee
|
99e80c381d
|
build: bump package version to 0.4.0
v0.4.0
|
2026-04-14 02:09:20 +07:00 |
|
Nils Andreas Svee
|
3c689b1d1e
|
feat(main): Orchestrate application shutdown and cleanup
|
2026-04-14 02:03:53 +07:00 |
|
Nils Andreas Svee
|
bda1a44b6e
|
feat(threads): Add graceful shutdown checks to worker loops
|
2026-04-14 02:03:53 +07:00 |
|
Nils Andreas Svee
|
6e4e6b85e9
|
feat(shutdown): Implement global shutdown signal handling
|
2026-04-14 02:03:53 +07:00 |
|
Nils Andreas Svee
|
f8976a78a2
|
feat(metrics): support arbitrary event tags and enhance monitoring coverage
Enable key-value metadata for events to track dry-run status and introduce new monitoring events for rate controller failure states.
|
2026-04-14 01:45:07 +07:00 |
|
Nils Andreas Svee
|
60e7ffc9e7
|
refactor(main): integrate MetricsSender across application entry point
|
2026-04-13 18:57:51 +07:00 |
|
Nils Andreas Svee
|
2db63e6159
|
refactor(reflector_selector): migrate to MetricsSender for event dispatch
|
2026-04-13 18:57:50 +07:00 |
|
Nils Andreas Svee
|
3095e32d41
|
refactor(ratecontroller): migrate to MetricsSender for metric dispatch
|
2026-04-13 18:57:50 +07:00 |
|
Nils Andreas Svee
|
57382465bf
|
refactor(pinger): migrate to MetricsSender for metric dispatch
|
2026-04-13 18:57:50 +07:00 |
|
Nils Andreas Svee
|
e9e233d98a
|
refactor(baseliner): migrate to MetricsSender for metric dispatch
|
2026-04-13 18:57:50 +07:00 |
|
Nils Andreas Svee
|
8036d27e6f
|
feat(metrics): track and report dropped metric counts
|
2026-04-13 18:57:50 +07:00 |
|
Nils Andreas Svee
|
451d42640b
|
refactor(metrics): encapsulate metric dispatch with MetricsSender
|
2026-04-13 18:57:50 +07:00 |
|
Nils Andreas Svee
|
b930a01fd6
|
feat(observability): emit a startup event metric to signal application initialization
Send a telemetry event when the process starts to provide better visibility into application lifecycle transitions.
|
2026-04-13 17:49:19 +07:00 |
|
Nils Andreas Svee
|
e7cbdbb265
|
docs(observability): document rationale for unbatched UDP metric flushing
Explain that individual metric delivery prevents data truncation caused by small UDP receive buffers on the remote host.
|
2026-04-13 17:36:30 +07:00 |
|
Nils Andreas Svee
|
1d7fd5800b
|
refactor(observability): initialize metrics collection earlier in the startup sequence
Move the metrics thread and error channel initialization before the settling period and peer setup to ensure early telemetry is captured.
|
2026-04-13 17:34:17 +07:00 |
|
Nils Andreas Svee
|
699c8782d9
|
fix(observability): send individual metrics over UDP to avoid packet size limits
Differentiate flushing logic between transport types to prevent UDP payload truncation while maintaining batched delivery for TCP.
|
2026-04-13 17:21:14 +07:00 |
|
Nils Andreas Svee
|
0f902e27a3
|
perf(observability): optimize metric flushing to reduce memory allocations
Use a pre-allocated buffer for metric serialization to improve efficiency when processing large batches.
|
2026-04-13 16:54:33 +07:00 |
|
Nils Andreas Svee
|
530a715bdf
|
fix(observability): refresh metric timestamps on each loop iteration
Move clock initialization inside processing loops to ensure exported metrics reflect the current time rather than a stale timestamp.
|
2026-04-13 16:32:30 +07:00 |
|
Nils Andreas Svee
|
dd8735f46e
|
chore(deps): update icmp-socket2 to 0.4.2
Update the icmp-socket2 dependency version in Cargo.toml and Cargo.lock to incorporate the latest upstream changes.
|
2026-04-13 16:23:20 +07:00 |
|
Nils Andreas Svee
|
72b4bc8dab
|
fix(observability): ensure all metric outputs are newline-terminated
Append trailing newlines to metric string formats to ensure consistent parsing and record separation by monitoring backends.
|
2026-04-13 15:43:09 +07:00 |
|
Nils Andreas Svee
|
757a715a54
|
chore: cleanup unused imports
|
2026-04-13 15:29:04 +07:00 |
|
Nils Andreas Svee
|
5af5b6597b
|
feat(observability): report reflector selection events and outcomes
Emit metrics detailing why a reflector reselection was triggered and which peers were selected to improve selection process visibility.
|
2026-04-13 15:28:56 +07:00 |
|
Nils Andreas Svee
|
d1ea0d0238
|
feat(observability): export rate and load metrics from rate controller
Send rates, load statistics, and delay deltas via the metrics channel to enable real-time monitoring of network performance.
|
2026-04-13 15:22:24 +07:00 |
|
Nils Andreas Svee
|
da3487e506
|
feat(observability): make metrics collection optional and granular
Wrap metrics senders in Option and conditionally initialize the monitoring thread to support granular configuration and reduced overhead.
|
2026-04-13 15:22:15 +07:00 |
|
Nils Andreas Svee
|
671e3f2671
|
refactor: standardize channel naming with tx and rx suffixes
Rename internal channel senders and receivers to follow standard Rust conventions for improved code consistency and readability.
|
2026-04-13 15:07:00 +07:00 |
|
Nils Andreas Svee
|
e5ba021a96
|
feat(observability): Pass metrics sender to rate controller and reflector selector
|
2026-04-13 15:01:46 +07:00 |
|
Nils Andreas Svee
|
2c1e7c0483
|
feat(observability): Export baseline statistics and events
|
2026-04-13 15:01:46 +07:00 |
|
Nils Andreas Svee
|
645ac08daa
|
feat(observability): Export ping related metrics
|
2026-04-13 15:01:46 +07:00 |
|
Nils Andreas Svee
|
1452409fe8
|
feat(observability): Integrate metrics exporter into main application flow
|
2026-04-13 15:01:46 +07:00 |
|
Nils Andreas Svee
|
44f551d38c
|
feat(observability): Add InfluxDB Line Protocol metrics module and config
|
2026-04-13 15:01:45 +07:00 |
|
Nils Andreas Svee
|
853f807e2c
|
feat: add metrics module for monitoring
Initialize the Metrics structure to receive and process ping statistics as part of the monitoring subsystem.
|
2026-04-13 12:11:05 +07:00 |
|
Nils Andreas Svee
|
f0fb3c9640
|
feat(monitoring): add dry-run mode to simulate qdisc rate changes
Enable a monitoring-only mode that logs intended bandwidth adjustments without applying them to the system via netlink.
|
2026-04-13 12:11:05 +07:00 |
|
Nils Andreas Svee
|
6d44556d63
|
style: reformat thread builder calls in main.rs
Standardize the formatting of thread spawning for the receiver and sender to improve code consistency and readability.
|
2026-04-13 12:06:50 +07:00 |
|
Nils Andreas Svee
|
8461d29788
|
build: bump version to 0.3.0
Update package version in Cargo.toml and Cargo.lock to reflect a new release.
v0.3.0
|
2026-04-01 12:55:52 +07:00 |
|
Nils Andreas Svee
|
9c51853147
|
refactor: update imports to use icmp-socket2
|
2026-04-01 12:52:19 +07:00 |
|
Nils Andreas Svee
|
050291990a
|
build: migrate from icmp-socket to icmp-socket2
|
2026-04-01 12:52:19 +07:00 |
|
Nils Andreas Svee
|
cac3d75ccb
|
build: update dependencies and remove redundant windows targets
|
2026-04-01 12:52:18 +07:00 |
|
renovate[bot]
|
7d833ecff8
|
chore(deps): update rust crate rustix to v1.1.4
|
2026-02-22 17:37:16 +00:00 |
|
Nils Andreas Svee
|
c2a7c5dfdb
|
refactor(main): Optimize reflector list assignment
|
2026-02-22 17:05:06 +07:00 |
|
Nils Andreas Svee
|
a4a83222fe
|
refactor(ratectrl): Enhance stability and file handling
|
2026-02-22 17:05:01 +07:00 |
|
Nils Andreas Svee
|
c45351042e
|
fix(pinger): Improve robustness of pinger operations
|
2026-02-22 17:04:56 +07:00 |
|
Nils Andreas Svee
|
1a87372ffb
|
refactor(main): Centralize thread error handling
|
2026-02-22 16:58:01 +07:00 |
|
Nils Andreas Svee
|
c116dd3e74
|
refactor(sync): Replace unwrap with anyhow-based locking
|
2026-02-22 16:57:11 +07:00 |
|
Nils Andreas Svee
|
d4ad24ce4a
|
feat(util): Introduce Mutex/RwLock error handling traits
|
2026-02-22 16:57:02 +07:00 |
|