Skip to content

Add path for optics error counters#1459

Open
sallylsy wants to merge 1 commit intoopenconfig:masterfrom
sallylsy:optics_counters_0325
Open

Add path for optics error counters#1459
sallylsy wants to merge 1 commit intoopenconfig:masterfrom
sallylsy:optics_counters_0325

Conversation

@sallylsy
Copy link
Copy Markdown
Contributor

Change Scope

  • Add counter paths to indicate number of errors in optical per physical lane.
  • This change is backwards compatible.

Platform Implementations

Tree View

 module: openconfig-platform
   +--rw components
      +--rw component* [name]
         +--rw oc-transceiver:transceiver
         |  +--rw oc-transceiver:physical-channels
         |  |  +--rw oc-transceiver:channel* [index]
         |  |     +--ro oc-transceiver:state
         |  |        +--ro oc-transceiver:index?                        uint16
         |  |        +--ro oc-transceiver:associated-optical-channel?   -> /oc-platform:components/component/name
         |  |        +--ro oc-transceiver:description?                  string
         |  |        +--ro oc-transceiver:tx-laser?                     boolean
         |  |        +--ro oc-transceiver:target-output-power?          decimal64
         |  |        +--ro oc-transceiver:laser-age?                    oc-types:percentage
         |  |        +--ro oc-transceiver:laser-temperature
         |  |        |  +--ro oc-transceiver:instant?    decimal64
         |  |        |  +--ro oc-transceiver:avg?        decimal64
         |  |        |  +--ro oc-transceiver:min?        decimal64
         |  |        |  +--ro oc-transceiver:max?        decimal64
         |  |        |  +--ro oc-transceiver:interval?   oc-types:stat-interval
         |  |        |  +--ro oc-transceiver:min-time?   oc-types:timeticks64
         |  |        |  +--ro oc-transceiver:max-time?   oc-types:timeticks64
         |  |        +--ro oc-transceiver:target-frequency-deviation
         |  |        |  +--ro oc-transceiver:instant?    decimal64
         |  |        |  +--ro oc-transceiver:avg?        decimal64
         |  |        |  +--ro oc-transceiver:min?        decimal64
         |  |        |  +--ro oc-transceiver:max?        decimal64
         |  |        |  +--ro oc-transceiver:interval?   oc-types:stat-interval
         |  |        |  +--ro oc-transceiver:min-time?   oc-types:timeticks64
         |  |        |  +--ro oc-transceiver:max-time?   oc-types:timeticks64
         |  |        +--ro oc-transceiver:tec-current
         |  |        |  +--ro oc-transceiver:instant?    decimal64
         |  |        |  +--ro oc-transceiver:avg?        decimal64
         |  |        |  +--ro oc-transceiver:min?        decimal64
         |  |        |  +--ro oc-transceiver:max?        decimal64
         |  |        |  +--ro oc-transceiver:interval?   oc-types:stat-interval
         |  |        |  +--ro oc-transceiver:min-time?   oc-types:timeticks64
         |  |        |  +--ro oc-transceiver:max-time?   oc-types:timeticks64
         |  |        +--ro oc-transceiver:tx-failure?                   boolean
         |  |        +--ro oc-transceiver:rx-los?                       boolean
         |  |        +--ro oc-transceiver:rx-cdr-lol?                   boolean
+        |  |        +--ro oc-transceiver:tx-fault-count?               oc-yang:counter64
+        |  |        +--ro oc-transceiver:tx-los-count?                 oc-yang:counter64
+        |  |        +--ro oc-transceiver:tx-lol-count?                 oc-yang:counter64
+        |  |        +--ro oc-transceiver:rx-los-count?                 oc-yang:counter64
+        |  |        +--ro oc-transceiver:rx-lol-count?                 oc-yang:counter64
+        |  |        +--ro oc-transceiver:host-snr?                     decimal64
+        |  |        +--ro oc-transceiver:media-snr?                    decimal64

Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request adds several lane-specific metrics to the OpenConfig platform transceiver model, including fault counters, loss of signal/lock counters, and signal-to-noise ratio (SNR) measurements for both host and media sides. The review feedback identifies indentation errors and notes that host-side metrics were incorrectly placed within a media-side grouping, suggesting they be moved to the appropriate host-lane-state grouping.

@sallylsy sallylsy force-pushed the optics_counters_0325 branch from 7b0495a to a767d80 Compare March 26, 2026 19:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

1 participant