[doc]: Enhance HFT document with aggregator and stats#2079
Open
Pterosaur wants to merge 5 commits into
Open
Conversation
Signed-off-by: Ze Gan <ganze718@gmail.com>
Collaborator
|
/azp run |
|
No pipelines are associated with this pull request. |
lihuay
previously approved these changes
Nov 20, 2025
Signed-off-by: Ze Gan <ganze718@gmail.com>
Collaborator
|
/azp run |
|
No pipelines are associated with this pull request. |
Signed-off-by: Ze Gan <ganze718@gmail.com>
Collaborator
|
/azp run |
|
No pipelines are associated with this pull request. |
Signed-off-by: Ze Gan <ganze718@gmail.com>
Collaborator
|
/azp run |
|
No pipelines are associated with this pull request. |
Pterosaur
marked this pull request as ready for review
June 21, 2026 06:13
This was referenced Jun 21, 2026
r12f
reviewed
Jun 25, 2026
| - [7.4.1. DEVICE\_METADATA](#741-device_metadata) | ||
| - [7.4.2. HIGH\_FREQUENCY\_TELEMETRY\_PROFILE](#742-high_frequency_telemetry_profile) | ||
| - [7.4.3. HIGH\_FREQUENCY\_TELEMETRY\_GROUP](#743-high_frequency_telemetry_group) | ||
| - [7.4.3. HIGH\_FREQUENCY\_TELEMETRY\_HARMONIZER](#743-high_frequency_telemetry_harmonizer) |
Contributor
There was a problem hiding this comment.
harmonizer is too tricky, I think we should make the name more revealing.
i would recommend: post-processor / aggregator. something like this.
r12f
reviewed
Jun 25, 2026
| The group_name must match HIGH_FREQUENCY_TELEMETRY_GROUP.group_name, and object_counter must be valid for that group. | ||
| An example is PORT|IF_IN_UCAST_PKTS,QUEUE|DROPPED_PACKETS. | ||
| The default value is empty, meaning no counters are corrected for rollover. | ||
| heatmap_counters = A comma-separated list of group and counter pairs that should be treated as heatmap data. |
Contributor
There was a problem hiding this comment.
heatmap needs to support bucket config. needs to add this one in.
Signed-off-by: Ze Gan <ganze718@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What I did
Enhanced the High Frequency Telemetry HLD with aggregator support and related schema updates.
This PR documents:
HIGH_FREQUENCY_TELEMETRY_AGGREGATORas a new CONFIG_DB table for aggregator methods.HIGH_FREQUENCY_TELEMETRY_PROFILE.aggregatorbinding so a profile can select an aggregator configuration.reporting_rateaggregation, with microseconds as the unit and no aggregation when unset.rollover_countersandheatmap_countersas comma-separatedGROUP|COUNTERlists, using the same list format asobject_names/object_counters.Why I did it
HFT needs aggregation configuration to be independent from the base telemetry profile and extensible for future methods. Keeping aggregator configuration in a dedicated table lets profiles opt in by reference and leaves room for later aggregation methods without changing the profile schema each time.
Feature PR tracking
reporting_rateaggregationHow I verified it
Validated the YANG syntax locally with
pyangusing minimal stubs for imported SONiC modules:python -m pyang -p "C:\Users\zegan\AppData\Local\Temp\opencode\hft-yang-stubs" doc/high-frequency-telemetry/sonic-high-frequency-telemetry.yangAlso ran local instance-level checks for
rollover_counters/heatmap_countersvalidation:PORT,BUFFER_POOL,INGRESS_PRIORITY_GROUP, andQUEUEcounters passed.PORT|DROPPED_PACKETS,QUEUE|IF_IN_UCAST_PKTS,ACL|PACKETS, and missing|separator.Details if related
The document describes future aggregator methods, but implementation can land in phases. The current linked sonic-swss implementation PR covers the first phase:
reporting_rateaggregation.