Commit fb1166b
authored
[countersyncd]: Init counter syncd module (sonic-net#3796)
What I did
This pull request introduces a new Rust-based application, countersyncd, designed for high-frequency telemetry data processing in SONiC environments. It also includes updates to the build pipeline to support the new application. The key changes are grouped into two themes: application implementation and build pipeline updates.
Application Implementation:
New Rust Application (countersyncd):
Added countersyncd as a new Rust application for processing telemetry data, including its main entry point (countersyncd/src/main.rs) and library modules for actors and messaging (countersyncd/src/lib.rs).
Defined actors (NetlinkActor, SwssActor, IpfixActor, and StatsReporterActor) and their communication channels for telemetry data processing.
Introduced command-line argument parsing using clap and logging configuration with env_logger.
Actor and Messaging Modules:
Added actor modules (netlink, ipfix, stats_reporter, and swss) for handling specific telemetry tasks.
Implemented messaging structures for inter-actor communication, including SocketBufferMessage, IPFixTemplatesMessage, and NetlinkCommand.
Build Pipeline Updates:
Pipeline Modifications:
Updated .azure-pipelines/build-template.yml to install and configure Redis for the build environment.
Added a step to run unit tests for countersyncd using cargo test.
Dependencies for countersyncd:
Defined dependencies in countersyncd/Cargo.toml, including libraries for async runtime (tokio), YAML parsing (yaml-rust), and logging (log, env_logger).
These changes collectively enable the development and integration of countersyncd into the SONiC platform while ensuring proper build and test support.
Why I did it
This module is required by the document: https://github.com/sonic-net/SONiC/blob/master/doc/high-frequency-telemetry/high-frequency-telemetry-hld.md
How I verified it
This PR includes the unittest for countersyncd, Check Azp status
Signed-off-by: Ze Gan <ganze718@gmail.com>1 parent a65c02e commit fb1166b
File tree
30 files changed
+14078
-0
lines changed- .azure-pipelines
- crates/countersyncd
- src
- actor
- message
- sai
- tests
- data
- debian
30 files changed
+14078
-0
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
106 | 106 | | |
107 | 107 | | |
108 | 108 | | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
109 | 115 | | |
110 | 116 | | |
111 | 117 | | |
| |||
232 | 238 | | |
233 | 239 | | |
234 | 240 | | |
| 241 | + | |
| 242 | + | |
| 243 | + | |
235 | 244 | | |
236 | 245 | | |
237 | 246 | | |
| |||
0 commit comments