This model defines health-related variables for components within the openconfig-platform model (which defines the the /componen...
Version: 2023-04-11
module openconfig-platform-healthz { yang-version 1; namespace "http://openconfig.net/yang/platform/healthz"; prefix oc-platform-healthz; import openconfig-extensions { prefix oc-ext; } import openconfig-types { prefix oc-types; } import openconfig-platform { prefix oc-platform; } organization "OpenConfig working group"; contact "OpenConfig working group www.openconfig.net"; description "This model defines health-related variables for components within the openconfig-platform model (which defines the the /components hierarchy). It is designed to be used in conjunction with the gNOI Healthz service (see https://github.com/openconfig/gnoi/blob/main/healthz/README.md). The health variables included in this model are streamed via telemetry interfaces, where gNOI.Healthz is used to retrieve further diagnostic and debugging informaton from a network device."; revision "2023-04-11" { description "Clarification for healthz state transition and unhealthy-count leaf"; reference "0.1.1"; } revision "2023-01-23" { description "Initial healthz variable revision"; reference "0.1.0"; } oc-ext:openconfig-version "0.1.1"; grouping platform-health-top { description "Grouping containing health-related parameters."; container healthz { description "The health of the component. The paramaters within this container indicate the status of the component beyond whether it is operationally up or down. When a signal is received that a component is in an unhealthy state the gNOI.Healthz service can be used to retrieve further diagnostic information relating to the component. The contents of this directory relate only to the specific component that it is associated with. In the case that child components become unhealthy and this causes a parent component to be unhealthy, the new unhealthy status should be reported at both components, such that an interested system can take the relevant actions (e.g., retrieve the Healthz output, or apply mitigation actions)."; reference "https://github.com/openconfig/gnoi/tree/main/healthz"; container state { config false; description "Operational state parameters relating to component health."; uses platform-health-state; } // container state } // container healthz } // grouping platform-health-top grouping platform-health-state { description "Operational state parameters relating to a platform component's health."; leaf status { oc-ext:telemetry-on-change; type enumeration { enum "UNSPECIFIED" { value 0; description "The component's health status has not yet been checked by the system."; } enum "HEALTHY" { value 1; description "The component is in a HEALTHY state, and is operating within the expected parameters."; } enum "UNHEALTHY" { value 2; description "The component is in a unhealthy state, it is not performing the function expected of it."; } } description "The status of the component, indicating its current health."; } leaf last-unhealthy { oc-ext:telemetry-on-change; type oc-types:timeticks64; description "The time at which the component as last observed to be unhealthy represented as nanoseconds since the Unix epoch. Unhealthy is defined as the component being in a state other than HEALTHY."; } leaf unhealthy-count { oc-ext:telemetry-on-change; type uint64; description "The number of status checks that have determined this component to be in an unhealthy state. This counter should be incremented when the component transitions from the HEALTHY to any other state such that the value reflects the number of times the component has become unhealthy."; } } // grouping platform-health-state augment /oc-platform:components/oc-platform:component { description "Augment healthz information into the /components/component hierarchy."; uses platform-health-top; } } // module openconfig-platform-healthz
© 2023 YumaWorks, Inc. All rights reserved.