go.d/snmp: improve Cisco Nexus SNMP monitoring (#22193)
Costa Tsaousis committed
Apr 14, 2026 at 13:04 UTC
964443edd72ac8aef047c005ef5626ee93e17532
11 files changed
+1039
src/go/plugin/go.d/collector/snmp/ddsnmp/ddsnmpcollector/testdata/nexus/cisco-nexus-extended.snmprec
new
+118
@@ -0,0 +1,118 @@
1
+1.3.6.1.2.1.1.1.0|4|Cisco NX-OS(tm) Nexus9000 C9364C, Software (NXOS 64-bit), Version 10.3(4a), RELEASE SOFTWARE Copyright (c) 2002-2024 by Cisco Systems, Inc. Compiled 1/15/2024 12:00:00
2
+1.3.6.1.2.1.1.2.0|6|1.3.6.1.4.1.9.12.3.1.3.1906
3
+1.3.6.1.2.1.1.3.0|67|864000000
4
+1.3.6.1.2.1.1.5.0|4|nexus-dc1-leaf01
5
+1.3.6.1.2.1.1.6.0|4|DC1-Row3-Rack12
6
+1.3.6.1.2.1.31.1.1.1.1.8|4|Vlan128
7
+1.3.6.1.2.1.31.1.1.1.1.10001|4|port-channel100
8
+1.3.6.1.2.1.31.1.1.1.1.10010|4|port-channel10
9
+1.3.6.1.2.1.31.1.1.1.1.10020|4|port-channel20
10
+1.3.6.1.2.1.31.1.1.1.1.100|4|loopback0
11
+1.3.6.1.4.1.9.9.807.1.1.2.1.2.100|2|2
12
+1.3.6.1.4.1.9.9.807.1.1.2.1.4.100|2|1
13
+1.3.6.1.4.1.9.9.807.1.1.2.1.7.100|2|1
14
+1.3.6.1.4.1.9.9.807.1.2.1.1.2.100|2|2
15
+1.3.6.1.4.1.9.9.807.1.2.1.1.3.100|2|2
16
+1.3.6.1.4.1.9.9.807.1.2.1.1.5.100|4x|001122334455
17
+1.3.6.1.4.1.9.9.807.1.4.1.1.2.100|2|10001
18
+1.3.6.1.4.1.9.9.807.1.3.1.1.2.100|65|582401
19
+1.3.6.1.4.1.9.9.807.1.3.1.1.3.100|65|582395
20
+1.3.6.1.4.1.9.9.807.1.3.1.1.5.100|65|3
21
+1.3.6.1.4.1.9.9.807.1.4.2.1.3.100.10|2|10010
22
+1.3.6.1.4.1.9.9.807.1.4.2.1.4.100.10|2|3
23
+1.3.6.1.4.1.9.9.807.1.4.2.1.5.100.10|2|1
24
+1.3.6.1.4.1.9.9.807.1.4.2.1.6.100.10|4|
25
+1.3.6.1.4.1.9.9.807.1.4.2.1.3.100.20|2|10020
26
+1.3.6.1.4.1.9.9.807.1.4.2.1.4.100.20|2|3
27
+1.3.6.1.4.1.9.9.807.1.4.2.1.5.100.20|2|1
28
+1.3.6.1.4.1.9.9.807.1.4.2.1.6.100.20|4|
29
+1.3.6.1.4.1.9.9.820.1.1.1.1.2.1|2|2
30
+1.3.6.1.4.1.9.9.820.1.1.1.1.3.1|2|100
31
+1.3.6.1.4.1.9.9.820.1.1.2.1.4.1.10100|2|100
32
+1.3.6.1.4.1.9.9.820.1.1.2.1.6.1.10100|2|1
33
+1.3.6.1.4.1.9.9.820.1.1.2.1.8.1.10100|2|2
34
+1.3.6.1.4.1.9.9.820.1.1.2.1.9.1.10100|4|BD100
35
+1.3.6.1.4.1.9.9.820.1.1.2.1.4.1.10200|2|200
36
+1.3.6.1.4.1.9.9.820.1.1.2.1.6.1.10200|2|3
37
+1.3.6.1.4.1.9.9.820.1.1.2.1.8.1.10200|2|3
38
+1.3.6.1.4.1.9.9.820.1.1.2.1.9.1.10200|4|vrf-tenant1
39
+1.3.6.1.4.1.9.9.820.1.1.3.1.4.1.1.4.10.0.0.2|2|3
40
+1.3.6.1.4.1.9.9.820.1.1.3.1.4.1.1.4.10.0.0.3|2|2
41
+1.3.6.1.4.1.9.9.820.1.1.4.1.1.1.10100|70|5842910000
42
+1.3.6.1.4.1.9.9.820.1.1.4.1.2.1.10100|70|7489201000
43
+1.3.6.1.4.1.9.9.820.1.1.4.1.3.1.10100|70|120400
44
+1.3.6.1.4.1.9.9.820.1.1.4.1.4.1.10100|70|48230000
45
+1.3.6.1.4.1.9.9.820.1.1.4.1.5.1.10100|70|6012340000
46
+1.3.6.1.4.1.9.9.820.1.1.4.1.6.1.10100|70|8123456000
47
+1.3.6.1.4.1.9.9.820.1.1.4.1.7.1.10100|70|98000
48
+1.3.6.1.4.1.9.9.820.1.1.4.1.8.1.10100|70|31200000
49
+1.3.6.1.4.1.9.9.820.1.1.5.1.1.1.1.4.10.0.0.2|70|3210000000
50
+1.3.6.1.4.1.9.9.820.1.1.5.1.2.1.1.4.10.0.0.2|70|4100000000
51
+1.3.6.1.4.1.9.9.820.1.1.5.1.3.1.1.4.10.0.0.2|70|85000
52
+1.3.6.1.4.1.9.9.820.1.1.5.1.4.1.1.4.10.0.0.2|70|34000000
53
+1.3.6.1.4.1.9.9.820.1.1.5.1.5.1.1.4.10.0.0.2|70|2890000000
54
+1.3.6.1.4.1.9.9.820.1.1.5.1.6.1.1.4.10.0.0.2|70|3712000000
55
+1.3.6.1.4.1.9.9.820.1.1.5.1.7.1.1.4.10.0.0.2|70|72000
56
+1.3.6.1.4.1.9.9.820.1.1.5.1.8.1.1.4.10.0.0.2|70|28800000
57
+1.3.6.1.4.1.9.9.305.1.1.1.0|66|15
58
+1.3.6.1.4.1.9.9.305.1.1.2.0|66|42
59
+1.3.6.1.4.1.9.9.305.1.1.7.0|2|1
60
+1.3.6.1.4.1.9.9.305.1.1.9.0|2|2
61
+1.3.6.1.4.1.9.9.305.1.1.10.0|66|8640000
62
+1.3.6.1.4.1.9.9.377.1.1.2.1.3.95.1|4|vpc
63
+1.3.6.1.4.1.9.9.377.1.1.2.1.8.95.1|2|2
64
+1.3.6.1.4.1.9.9.377.1.1.2.1.3.22.1|4|ospf
65
+1.3.6.1.4.1.9.9.377.1.1.2.1.8.22.1|2|2
66
+1.3.6.1.4.1.9.9.377.1.1.2.1.3.100.1|4|bfd
67
+1.3.6.1.4.1.9.9.377.1.1.2.1.8.100.1|2|6
68
+1.3.6.1.4.1.9.9.377.1.1.2.1.3.145.1|4|vxlan
69
+1.3.6.1.4.1.9.9.377.1.1.2.1.8.145.1|2|2
70
+1.3.6.1.4.1.9.9.377.1.1.2.1.3.25.1|4|bgp
71
+1.3.6.1.4.1.9.9.377.1.1.2.1.8.25.1|2|2
72
+1.3.6.1.4.1.9.9.810.1.2.1.1.2.1|4|OTV-overlay1
73
+1.3.6.1.4.1.9.9.810.1.2.1.1.3.1|2|2
74
+1.3.6.1.4.1.9.9.810.1.2.1.1.4.1|2|0
75
+1.3.6.1.4.1.9.9.810.1.3.1.1.4.1.1.4.10.0.1.1|4|remote-edge-1
76
+1.3.6.1.4.1.9.9.810.1.3.1.1.5.1.1.4.10.0.1.1|2|1
77
+1.3.6.1.4.1.9.9.810.1.3.1.1.6.1.1.4.10.0.1.1|66|86400
78
+1.3.6.1.4.1.9.9.106.1.2.1.1.3.8.114|66|110
79
+1.3.6.1.4.1.9.9.106.1.2.1.1.4.8.114|2|1
80
+1.3.6.1.4.1.9.9.106.1.2.1.1.11.8.114|64x|0ac88001
81
+1.3.6.1.4.1.9.9.106.1.2.1.1.13.8.114|64x|0ac88002
82
+1.3.6.1.4.1.9.9.106.1.2.1.1.14.8.114|64x|0ac88003
83
+1.3.6.1.4.1.9.9.106.1.2.1.1.15.8.114|2|6
84
+1.3.6.1.4.1.9.9.106.1.2.1.1.3.10.200|66|100
85
+1.3.6.1.4.1.9.9.106.1.2.1.1.4.10.200|2|2
86
+1.3.6.1.4.1.9.9.106.1.2.1.1.11.10.200|64x|0ac87d01
87
+1.3.6.1.4.1.9.9.106.1.2.1.1.13.10.200|64x|0ac87d02
88
+1.3.6.1.4.1.9.9.106.1.2.1.1.14.10.200|64x|0ac87d03
89
+1.3.6.1.4.1.9.9.106.1.2.1.1.15.10.200|2|5
90
+1.3.6.1.4.1.9.9.168.1.1.1.0|2|0
91
+1.3.6.1.4.1.9.9.168.1.1.2.0|2|3
92
+1.3.6.1.4.1.9.9.168.1.1.11.0|2|6
93
+1.3.6.1.4.1.9.9.168.1.2.1.1.3.3245|64x|0a0a0a01
94
+1.3.6.1.4.1.9.9.168.1.2.1.1.7.3245|2|0
95
+1.3.6.1.4.1.9.9.168.1.2.1.1.9.3245|2|2
96
+1.3.6.1.4.1.9.9.168.1.2.1.1.21.3245|2|255
97
+1.3.6.1.4.1.9.9.168.1.2.1.1.3.3246|64x|0a0a0a02
98
+1.3.6.1.4.1.9.9.168.1.2.1.1.7.3246|2|0
99
+1.3.6.1.4.1.9.9.168.1.2.1.1.9.3246|2|2
100
+1.3.6.1.4.1.9.9.168.1.2.1.1.21.3246|2|255
101
+1.3.6.1.4.1.9.10.137.1.2.1.3.663362|66|8002
102
+1.3.6.1.4.1.9.10.137.1.2.1.6.663362|2|4
103
+1.3.6.1.4.1.9.10.137.1.2.1.8.663362|2|0
104
+1.3.6.1.4.1.9.10.137.1.2.1.9.663362|2|1
105
+1.3.6.1.4.1.9.10.137.1.2.1.14.663362|4x|ac11d19d
106
+1.3.6.1.4.1.9.10.137.1.2.1.18.663362|66|4
107
+1.3.6.1.4.1.9.10.137.1.2.1.3.991042|66|8007
108
+1.3.6.1.4.1.9.10.137.1.2.1.6.991042|2|4
109
+1.3.6.1.4.1.9.10.137.1.2.1.8.991042|2|0
110
+1.3.6.1.4.1.9.10.137.1.2.1.9.991042|2|1
111
+1.3.6.1.4.1.9.10.137.1.2.1.14.991042|4x|ac11d1e9
112
+1.3.6.1.4.1.9.10.137.1.2.1.18.991042|66|4
113
+1.3.6.1.4.1.9.10.137.1.2.1.3.335687|66|8003
114
+1.3.6.1.4.1.9.10.137.1.2.1.6.335687|2|2
115
+1.3.6.1.4.1.9.10.137.1.2.1.8.335687|2|1
116
+1.3.6.1.4.1.9.10.137.1.2.1.9.335687|2|1
117
+1.3.6.1.4.1.9.10.137.1.2.1.14.335687|4x|ac11d1e9
118
+1.3.6.1.4.1.9.10.137.1.2.1.18.335687|66|4
src/go/plugin/go.d/config/go.d/snmp.profiles/default/_cisco-bfd.yaml
new
+66
@@ -0,0 +1,66 @@
1
+# Bidirectional Forwarding Detection (BFD) session metrics for Cisco devices.
2
+# MIB: CISCO-IETF-BFD-MIB (1.3.6.1.4.1.9.10.137)
3
+# Provides sub-second failure detection for routed adjacencies, L3 loopback interfaces,
4
+# and non-physical peer links. Universal across IOS, IOS-XE, NX-OS, IOS-XR.
5
+
6
+metrics:
7
+ - MIB: CISCO-IETF-BFD-MIB
8
+ table:
9
+ OID: 1.3.6.1.4.1.9.10.137.1.2
10
+ name: ciscoBfdSessTable
11
+ symbols:
12
+ - OID: 1.3.6.1.4.1.9.10.137.1.2.1.6
13
+ name: ciscoBfdSessState
14
+ chart_meta:
15
+ description: BFD session operational state
16
+ family: 'Network/BFD/Session/State'
17
+ unit: "{status}"
18
+ mapping:
19
+ 1: admin_down
20
+ 2: down
21
+ 3: init
22
+ 4: up
23
+ 5: failing
24
+ - OID: 1.3.6.1.4.1.9.10.137.1.2.1.8
25
+ name: ciscoBfdSessDiag
26
+ chart_meta:
27
+ description: BFD session diagnostic code (reason for last state change)
28
+ family: 'Network/BFD/Session/Diagnostic'
29
+ unit: "{status}"
30
+ mapping:
31
+ 0: no_diagnostic
32
+ 1: control_detection_time_expired
33
+ 2: echo_function_failed
34
+ 3: neighbor_signaled_session_down
35
+ 4: forwarding_plane_reset
36
+ 5: path_down
37
+ 6: concatenated_path_down
38
+ 7: administratively_down
39
+ 8: reverse_concatenated_path_down
40
+ - OID: 1.3.6.1.4.1.9.10.137.1.2.1.18
41
+ name: ciscoBfdSessDetectMult
42
+ chart_meta:
43
+ description: BFD detection multiplier (timeout = interval x multiplier)
44
+ family: 'Network/BFD/Session/DetectMult'
45
+ unit: "1"
46
+ metric_tags:
47
+ - tag: bfd_session_index
48
+ index: 1
49
+ - tag: _bfd_peer_addr
50
+ symbol:
51
+ OID: 1.3.6.1.4.1.9.10.137.1.2.1.14
52
+ name: ciscoBfdSessAddr
53
+ format: ip_address
54
+ - tag: _bfd_oper_mode
55
+ symbol:
56
+ OID: 1.3.6.1.4.1.9.10.137.1.2.1.9
57
+ name: ciscoBfdSessOperMode
58
+ mapping:
59
+ 1: async_with_echo
60
+ 2: async_without_echo
61
+ 3: demand_with_echo
62
+ 4: demand_without_echo
63
+ - tag: _bfd_local_discr
64
+ symbol:
65
+ OID: 1.3.6.1.4.1.9.10.137.1.2.1.3
66
+ name: ciscoBfdSessDiscriminator
src/go/plugin/go.d/config/go.d/snmp.profiles/default/_cisco-hsrp.yaml
new
+65
@@ -0,0 +1,65 @@
1
+# Hot Standby Router Protocol (HSRP) metrics for Cisco devices.
2
+# MIB: CISCO-HSRP-MIB (1.3.6.1.4.1.9.9.106)
3
+# Monitors first-hop gateway redundancy: group state, priority, active/standby routers.
4
+# Universal across IOS, IOS-XE, and NX-OS.
5
+
6
+metrics:
7
+ - MIB: CISCO-HSRP-MIB
8
+ table:
9
+ OID: 1.3.6.1.4.1.9.9.106.1.2.1
10
+ name: cHsrpGrpTable
11
+ symbols:
12
+ - OID: 1.3.6.1.4.1.9.9.106.1.2.1.1.15
13
+ name: cHsrpGrpStandbyState
14
+ chart_meta:
15
+ description: Current HSRP state machine state for this group
16
+ family: 'Network/HSRP/Group/State'
17
+ unit: "{status}"
18
+ mapping:
19
+ 1: initial
20
+ 2: learn
21
+ 3: listen
22
+ 4: speak
23
+ 5: standby
24
+ 6: active
25
+ - OID: 1.3.6.1.4.1.9.9.106.1.2.1.1.3
26
+ name: cHsrpGrpPriority
27
+ chart_meta:
28
+ description: HSRP group priority (higher wins active role election)
29
+ family: 'Network/HSRP/Group/Priority'
30
+ unit: "{priority}"
31
+ metric_tags:
32
+ # Index is (ifIndex, cHsrpGrpNumber) — extract ifIndex for interface name join
33
+ - tag: interface
34
+ table: ifXTable
35
+ MIB: IF-MIB
36
+ symbol:
37
+ OID: 1.3.6.1.2.1.31.1.1.1.1
38
+ name: ifName
39
+ index_transform:
40
+ - start: 0
41
+ end: 0
42
+ - tag: hsrp_group
43
+ index: 2
44
+ - tag: _hsrp_virtual_ip
45
+ symbol:
46
+ OID: 1.3.6.1.4.1.9.9.106.1.2.1.1.11
47
+ name: cHsrpGrpVirtualIpAddr
48
+ format: ip_address
49
+ - tag: _hsrp_active_router
50
+ symbol:
51
+ OID: 1.3.6.1.4.1.9.9.106.1.2.1.1.13
52
+ name: cHsrpGrpActiveRouter
53
+ format: ip_address
54
+ - tag: _hsrp_standby_router
55
+ symbol:
56
+ OID: 1.3.6.1.4.1.9.9.106.1.2.1.1.14
57
+ name: cHsrpGrpStandbyRouter
58
+ format: ip_address
59
+ - tag: _hsrp_preempt
60
+ symbol:
61
+ OID: 1.3.6.1.4.1.9.9.106.1.2.1.1.4
62
+ name: cHsrpGrpPreempt
63
+ mapping:
64
+ 1: "true"
65
+ 2: "false"
src/go/plugin/go.d/config/go.d/snmp.profiles/default/_cisco-nexus-feature.yaml
new
+34
@@ -0,0 +1,34 @@
1
+# NX-OS feature control table for Cisco Nexus.
2
+# MIB: CISCO-FEATURE-CONTROL-MIB (1.3.6.1.4.1.9.9.377)
3
+# Reports whether NX-OS features (vpc, vxlan, ospf, bgp, bfd, lacp, hsrp, etc.) are
4
+# enabled, disabled, or enabled-but-not-running. Useful for alerting on features that
5
+# should be running but aren't, and for skipping disabled-feature polls.
6
+
7
+metrics:
8
+ - MIB: CISCO-FEATURE-CONTROL-MIB
9
+ table:
10
+ OID: 1.3.6.1.4.1.9.9.377.1.1.2
11
+ name: cfcFeatureCtrl2Table
12
+ symbols:
13
+ - OID: 1.3.6.1.4.1.9.9.377.1.1.2.1.8
14
+ name: cfcFeatureCtrlOpStatus2
15
+ chart_meta:
16
+ description: Current operational status of the NX-OS feature
17
+ family: 'System/NX-OS/Feature/Status'
18
+ unit: "{status}"
19
+ mapping:
20
+ 1: unknown
21
+ 2: enabled
22
+ 3: disabled
23
+ 4: installed
24
+ 5: uninstalled
25
+ 6: enabled_not_running
26
+ metric_tags:
27
+ - tag: feature_index
28
+ index: 1
29
+ - tag: feature_instance
30
+ index: 2
31
+ - tag: feature_name
32
+ symbol:
33
+ OID: 1.3.6.1.4.1.9.9.377.1.1.2.1.3
34
+ name: cfcFeatureCtrlName2
src/go/plugin/go.d/config/go.d/snmp.profiles/default/_cisco-nexus-nve.yaml
new
+257
@@ -0,0 +1,257 @@
1
+# VXLAN Network Virtualization Endpoint (NVE) metrics for Cisco Nexus.
2
+# MIB: CISCO-NETWORK-VIRTUALIZATION-OVERLAY-MIB (1.3.6.1.4.1.9.9.820)
3
+# Monitors NVE instances, VNI configuration/replication mode, peer adjacency,
4
+# and per-VNI / per-peer traffic counters.
5
+
6
+metrics:
7
+ # ---- NVE instance table (one row per NVE interface) ----
8
+ - MIB: CISCO-NETWORK-VIRTUALIZATION-OVERLAY-MIB
9
+ table:
10
+ OID: 1.3.6.1.4.1.9.9.820.1.1.1
11
+ name: cnvoNvoTable
12
+ symbols:
13
+ - OID: 1.3.6.1.4.1.9.9.820.1.1.1.1.2
14
+ name: cnvoNvoEncapType
15
+ chart_meta:
16
+ description: Encapsulation type for the NVE instance
17
+ family: 'Network/VXLAN/NVE/EncapType'
18
+ unit: "{type}"
19
+ mapping:
20
+ 1: unknown
21
+ 2: vxlan
22
+ 3: nvgre
23
+ metric_tags:
24
+ - tag: nve_instance
25
+ index: 1
26
+ - tag: _nve_source_ifindex
27
+ symbol:
28
+ OID: 1.3.6.1.4.1.9.9.820.1.1.1.1.3
29
+ name: cnvoNvoSourceInterface
30
+
31
+ # ---- Virtual network (VNI) table (one row per NVE instance + VNI) ----
32
+ - MIB: CISCO-NETWORK-VIRTUALIZATION-OVERLAY-MIB
33
+ table:
34
+ OID: 1.3.6.1.4.1.9.9.820.1.1.2
35
+ name: cnvoVNetTable
36
+ symbols:
37
+ - OID: 1.3.6.1.4.1.9.9.820.1.1.2.1.6
38
+ name: cnvoVNetReplication
39
+ chart_meta:
40
+ description: Replication mode of the VNI
41
+ family: 'Network/VXLAN/VNI/Replication'
42
+ unit: "{mode}"
43
+ mapping:
44
+ 1: multicast
45
+ 2: unconfigured
46
+ 3: unicast_bgp
47
+ 4: unicast_static
48
+ - OID: 1.3.6.1.4.1.9.9.820.1.1.2.1.8
49
+ name: cnvoVNetVniType
50
+ chart_meta:
51
+ description: Type of the virtual network identifier
52
+ family: 'Network/VXLAN/VNI/Type'
53
+ unit: "{type}"
54
+ mapping:
55
+ 1: unknown
56
+ 2: l2
57
+ 3: l3
58
+ metric_tags:
59
+ - tag: nve_instance
60
+ index: 1
61
+ - tag: vni
62
+ index: 2
63
+ - tag: _vni_vlan
64
+ symbol:
65
+ OID: 1.3.6.1.4.1.9.9.820.1.1.2.1.4
66
+ name: cnvoVNetVlan
67
+ - tag: _vni_vrf_or_bd
68
+ symbol:
69
+ OID: 1.3.6.1.4.1.9.9.820.1.1.2.1.9
70
+ name: cnvoVNetIpVrfOrBridgeDomainName
71
+
72
+ # ---- NVE peer table (one row per NVE instance + remote VTEP) ----
73
+ # Index: (cnvoNvoInstanceId, cnvoPeerIpAddrType, cnvoPeerIpAddr)
74
+ # InetAddress index encoding: addrType.addrLen.byte0.byte1...
75
+ # For IPv4 10.0.0.2: full suffix is .1.1.4.10.0.0.2
76
+ # pos 0=instanceId, 1=addrType, 2=addrLen, 3-6=IPv4 bytes
77
+ # NOTE: index_transform start:3 end:6 covers IPv4 only. Datacenter VXLAN underlay
78
+ # is virtually always IPv4. IPv6 support needs engine "keep to end" capability.
79
+ - MIB: CISCO-NETWORK-VIRTUALIZATION-OVERLAY-MIB
80
+ table:
81
+ OID: 1.3.6.1.4.1.9.9.820.1.1.3
82
+ name: cnvoPeerTable
83
+ symbols:
84
+ - OID: 1.3.6.1.4.1.9.9.820.1.1.3.1.4
85
+ name: cnvoPeerLearningSourceType
86
+ chart_meta:
87
+ description: How this NVE peer was learned
88
+ family: 'Network/VXLAN/Peer/LearningSource'
89
+ unit: "{type}"
90
+ mapping:
91
+ 1: unknown
92
+ 2: data_plane
93
+ 3: control_plane
94
+ metric_tags:
95
+ - tag: nve_instance
96
+ index: 1
97
+ - tag: _nve_peer_addr_type
98
+ index: 2
99
+ - tag: nve_peer_addr
100
+ symbol:
101
+ name: peerAddrFromIndex
102
+ format: ip_address
103
+ index_transform:
104
+ - start: 3
105
+ end: 6
106
+
107
+ # ---- Per-VNI traffic statistics ----
108
+ - MIB: CISCO-NETWORK-VIRTUALIZATION-OVERLAY-MIB
109
+ table:
110
+ OID: 1.3.6.1.4.1.9.9.820.1.1.4
111
+ name: cnvoVNetStatsTable
112
+ symbols:
113
+ - OID: 1.3.6.1.4.1.9.9.820.1.1.4.1.5
114
+ name: _cnvoVNetInUnicastPackets
115
+ - OID: 1.3.6.1.4.1.9.9.820.1.1.4.1.1
116
+ name: _cnvoVNetOutUnicastPackets
117
+ - OID: 1.3.6.1.4.1.9.9.820.1.1.4.1.6
118
+ name: _cnvoVNetInUnicastBytes
119
+ scale_factor: 8
120
+ - OID: 1.3.6.1.4.1.9.9.820.1.1.4.1.2
121
+ name: _cnvoVNetOutUnicastBytes
122
+ scale_factor: 8
123
+ - OID: 1.3.6.1.4.1.9.9.820.1.1.4.1.7
124
+ name: _cnvoVNetInMulticastPackets
125
+ - OID: 1.3.6.1.4.1.9.9.820.1.1.4.1.3
126
+ name: _cnvoVNetOutMulticastPackets
127
+ - OID: 1.3.6.1.4.1.9.9.820.1.1.4.1.8
128
+ name: _cnvoVNetInMulticastBytes
129
+ scale_factor: 8
130
+ - OID: 1.3.6.1.4.1.9.9.820.1.1.4.1.4
131
+ name: _cnvoVNetOutMulticastBytes
132
+ scale_factor: 8
133
+ metric_tags:
134
+ - tag: nve_instance
135
+ index: 1
136
+ - tag: vni
137
+ index: 2
138
+
139
+ # ---- Per-peer traffic statistics ----
140
+ # Index: (cnvoNvoInstanceId, cnvoPeerIpAddrType, cnvoPeerIpAddr)
141
+ # Same IPv4-only index_transform limitation as cnvoPeerTable above.
142
+ - MIB: CISCO-NETWORK-VIRTUALIZATION-OVERLAY-MIB
143
+ table:
144
+ OID: 1.3.6.1.4.1.9.9.820.1.1.5
145
+ name: cnvoNvoPeerStatsTable
146
+ symbols:
147
+ - OID: 1.3.6.1.4.1.9.9.820.1.1.5.1.5
148
+ name: _cnvoNvoPeerInUnicastPackets
149
+ - OID: 1.3.6.1.4.1.9.9.820.1.1.5.1.1
150
+ name: _cnvoNvoPeerOutUnicastPackets
151
+ - OID: 1.3.6.1.4.1.9.9.820.1.1.5.1.6
152
+ name: _cnvoNvoPeerInUnicastBytes
153
+ scale_factor: 8
154
+ - OID: 1.3.6.1.4.1.9.9.820.1.1.5.1.2
155
+ name: _cnvoNvoPeerOutUnicastBytes
156
+ scale_factor: 8
157
+ - OID: 1.3.6.1.4.1.9.9.820.1.1.5.1.7
158
+ name: _cnvoNvoPeerInMulticastPackets
159
+ - OID: 1.3.6.1.4.1.9.9.820.1.1.5.1.3
160
+ name: _cnvoNvoPeerOutMulticastPackets
161
+ - OID: 1.3.6.1.4.1.9.9.820.1.1.5.1.8
162
+ name: _cnvoNvoPeerInMulticastBytes
163
+ scale_factor: 8
164
+ - OID: 1.3.6.1.4.1.9.9.820.1.1.5.1.4
165
+ name: _cnvoNvoPeerOutMulticastBytes
166
+ scale_factor: 8
167
+ metric_tags:
168
+ - tag: nve_instance
169
+ index: 1
170
+ - tag: _nve_peer_addr_type
171
+ index: 2
172
+ - tag: nve_peer_addr
173
+ symbol:
174
+ name: peerStatsAddrFromIndex
175
+ format: ip_address
176
+ index_transform:
177
+ - start: 3
178
+ end: 6
179
+
180
+virtual_metrics:
181
+ # Per-VNI unicast traffic
182
+ - name: cnvoVNetUnicastTraffic
183
+ per_row: true
184
+ group_by: ["nve_instance", "vni"]
185
+ sources:
186
+ - metric: _cnvoVNetInUnicastBytes
187
+ table: cnvoVNetStatsTable
188
+ as: in
189
+ - metric: _cnvoVNetOutUnicastBytes
190
+ table: cnvoVNetStatsTable
191
+ as: out
192
+ chart_meta:
193
+ description: VXLAN VNI unicast traffic
194
+ family: 'Network/VXLAN/VNI/Traffic/Unicast'
195
+ unit: "bit/s"
196
+
197
+ # Per-VNI unicast packets
198
+ - name: cnvoVNetUnicastPackets
199
+ per_row: true
200
+ group_by: ["nve_instance", "vni"]
201
+ sources:
202
+ - metric: _cnvoVNetInUnicastPackets
203
+ table: cnvoVNetStatsTable
204
+ as: in
205
+ - metric: _cnvoVNetOutUnicastPackets
206
+ table: cnvoVNetStatsTable
207
+ as: out
208
+ chart_meta:
209
+ description: VXLAN VNI unicast packets
210
+ family: 'Network/VXLAN/VNI/Packets/Unicast'
211
+ unit: "{packet}/s"
212
+
213
+ # Per-VNI multicast traffic
214
+ - name: cnvoVNetMulticastTraffic
215
+ per_row: true
216
+ group_by: ["nve_instance", "vni"]
217
+ sources:
218
+ - metric: _cnvoVNetInMulticastBytes
219
+ table: cnvoVNetStatsTable
220
+ as: in
221
+ - metric: _cnvoVNetOutMulticastBytes
222
+ table: cnvoVNetStatsTable
223
+ as: out
224
+ chart_meta:
225
+ description: VXLAN VNI multicast traffic (BUM replication)
226
+ family: 'Network/VXLAN/VNI/Traffic/Multicast'
227
+ unit: "bit/s"
228
+
229
+ # Per-peer unicast traffic (one chart per peer row — full index differentiates peers)
230
+ - name: cnvoNvoPeerUnicastTraffic
231
+ per_row: true
232
+ sources:
233
+ - metric: _cnvoNvoPeerInUnicastBytes
234
+ table: cnvoNvoPeerStatsTable
235
+ as: in
236
+ - metric: _cnvoNvoPeerOutUnicastBytes
237
+ table: cnvoNvoPeerStatsTable
238
+ as: out
239
+ chart_meta:
240
+ description: VXLAN per-peer unicast traffic
241
+ family: 'Network/VXLAN/Peer/Traffic/Unicast'
242
+ unit: "bit/s"
243
+
244
+ # Per-peer unicast packets
245
+ - name: cnvoNvoPeerUnicastPackets
246
+ per_row: true
247
+ sources:
248
+ - metric: _cnvoNvoPeerInUnicastPackets
249
+ table: cnvoNvoPeerStatsTable
250
+ as: in
251
+ - metric: _cnvoNvoPeerOutUnicastPackets
252
+ table: cnvoNvoPeerStatsTable
253
+ as: out
254
+ chart_meta:
255
+ description: VXLAN per-peer unicast packets
256
+ family: 'Network/VXLAN/Peer/Packets/Unicast'
257
+ unit: "{packet}/s"
src/go/plugin/go.d/config/go.d/snmp.profiles/default/_cisco-nexus-otv.yaml
new
+92
@@ -0,0 +1,92 @@
1
+# Overlay Transport Virtualization (OTV) metrics for Cisco Nexus.
2
+# MIB: CISCO-OTV-MIB (1.3.6.1.4.1.9.9.810)
3
+# Monitors OTV overlay VPN state and adjacency health across datacenter sites.
4
+# Only populated on Nexus devices with OTV license and active configuration.
5
+
6
+metrics:
7
+ # ---- OTV overlay state (per overlay number) ----
8
+ - MIB: CISCO-OTV-MIB
9
+ table:
10
+ OID: 1.3.6.1.4.1.9.9.810.1.2.1
11
+ name: cotvOverlayTable
12
+ symbols:
13
+ - OID: 1.3.6.1.4.1.9.9.810.1.2.1.1.3
14
+ name: cotvOverlayVpnState
15
+ chart_meta:
16
+ description: Operational state of the OTV overlay VPN
17
+ family: 'Network/OTV/Overlay/State'
18
+ unit: "{status}"
19
+ mapping:
20
+ 0: other
21
+ 1: down
22
+ 2: up
23
+ - OID: 1.3.6.1.4.1.9.9.810.1.2.1.1.4
24
+ name: cotvOverlayVpnDownReason
25
+ chart_meta:
26
+ description: Reason the OTV overlay is down
27
+ family: 'Network/OTV/Overlay/DownReason'
28
+ unit: "{reason}"
29
+ mapping:
30
+ 0: noError
31
+ 1: configChange
32
+ 2: missingAdjServer
33
+ 3: missingJoinIf
34
+ 4: missingInternalIf
35
+ 5: joinIfDown
36
+ 6: internalIfDown
37
+ 7: siteIdMismatch
38
+ 8: adjServerDown
39
+ 9: adjServerRouteMissing
40
+ 10: dataGroupRangeMissing
41
+ 11: isisControlGroupMissing
42
+ 12: isisAdjDown
43
+ 13: controlGroupRouteDown
44
+ 14: adminDown
45
+ metric_tags:
46
+ - tag: otv_overlay
47
+ index: 1
48
+ - tag: _otv_vpn_name
49
+ symbol:
50
+ OID: 1.3.6.1.4.1.9.9.810.1.2.1.1.2
51
+ name: cotvOverlayVpnName
52
+
53
+ # ---- OTV adjacency database (per overlay + adjacent peer) ----
54
+ # Index: (cotvOverlayNumber, cotvAdjacentDevAddrType, cotvAdjacentDevAddr)
55
+ # Same InetAddress index encoding as NVE. IPv4-only transform (start:3 end:6).
56
+ - MIB: CISCO-OTV-MIB
57
+ table:
58
+ OID: 1.3.6.1.4.1.9.9.810.1.3.1
59
+ name: cotvAdjacencyDatabaseTable
60
+ symbols:
61
+ - OID: 1.3.6.1.4.1.9.9.810.1.3.1.1.5
62
+ name: cotvAdjacentDevState
63
+ chart_meta:
64
+ description: State of the OTV adjacency with this remote device
65
+ family: 'Network/OTV/Adjacency/State'
66
+ unit: "{status}"
67
+ mapping:
68
+ 0: other
69
+ 1: up
70
+ 2: down
71
+ - OID: 1.3.6.1.4.1.9.9.810.1.3.1.1.6
72
+ name: cotvAdjacentDevUpTime
73
+ chart_meta:
74
+ description: Time this OTV adjacency has been up
75
+ family: 'Network/OTV/Adjacency/Uptime'
76
+ unit: "s"
77
+ metric_tags:
78
+ - tag: otv_overlay
79
+ index: 1
80
+ - tag: _otv_adjacent_dev_addr_type
81
+ index: 2
82
+ - tag: otv_adjacent_dev_addr
83
+ symbol:
84
+ name: adjDevAddrFromIndex
85
+ format: ip_address
86
+ index_transform:
87
+ - start: 3
88
+ end: 6
89
+ - tag: _otv_adjacent_dev_name
90
+ symbol:
91
+ OID: 1.3.6.1.4.1.9.9.810.1.3.1.1.4
92
+ name: cotvAdjacentDevName
src/go/plugin/go.d/config/go.d/snmp.profiles/default/_cisco-nexus-system-ext.yaml
new
+55
@@ -0,0 +1,55 @@
1
+# NX-OS system extension scalars for Cisco Nexus.
2
+# MIB: CISCO-SYSTEM-EXT-MIB (1.3.6.1.4.1.9.9.305)
3
+# Exposes active supervisor CPU/memory utilization, system uptime, and console status.
4
+
5
+metrics:
6
+ - MIB: CISCO-SYSTEM-EXT-MIB
7
+ symbol:
8
+ OID: 1.3.6.1.4.1.9.9.305.1.1.1.0
9
+ name: cseSysCPUUtilization
10
+ chart_meta:
11
+ description: Average CPU utilization on the active supervisor
12
+ family: 'System/NX-OS/CPU'
13
+ unit: "%"
14
+
15
+ - MIB: CISCO-SYSTEM-EXT-MIB
16
+ symbol:
17
+ OID: 1.3.6.1.4.1.9.9.305.1.1.2.0
18
+ name: cseSysMemoryUtilization
19
+ chart_meta:
20
+ description: Average memory utilization on the active supervisor
21
+ family: 'System/NX-OS/Memory'
22
+ unit: "%"
23
+
24
+ - MIB: CISCO-SYSTEM-EXT-MIB
25
+ symbol:
26
+ OID: 1.3.6.1.4.1.9.9.305.1.1.10.0
27
+ name: cseSysUpTime
28
+ chart_meta:
29
+ description: Elapsed time since the system last rebooted (survives supervisor switchover)
30
+ family: 'System/NX-OS/Uptime'
31
+ unit: "s"
32
+
33
+ - MIB: CISCO-SYSTEM-EXT-MIB
34
+ symbol:
35
+ OID: 1.3.6.1.4.1.9.9.305.1.1.7.0
36
+ name: cseSysConsolePortStatus
37
+ chart_meta:
38
+ description: Console port connection status
39
+ family: 'System/NX-OS/Console'
40
+ unit: "{status}"
41
+ mapping:
42
+ 1: connected
43
+ 2: not_connected
44
+
45
+ - MIB: CISCO-SYSTEM-EXT-MIB
46
+ symbol:
47
+ OID: 1.3.6.1.4.1.9.9.305.1.1.9.0
48
+ name: cseSysFIPSModeActivation
49
+ chart_meta:
50
+ description: FIPS 140-2 cryptographic mode activation state
51
+ family: 'System/NX-OS/FIPS'
52
+ unit: "{status}"
53
+ mapping:
54
+ 1: enabled
55
+ 2: disabled
src/go/plugin/go.d/config/go.d/snmp.profiles/default/_cisco-nexus-vpc.yaml
new
+151
@@ -0,0 +1,151 @@
1
+# Virtual Port Channel (vPC) metrics for Cisco Nexus (NX-OS).
2
+# MIB: CISCO-VPC-MIB (1.3.6.1.4.1.9.9.807)
3
+# Monitors vPC domain role, peer-keepalive health, peer-link status, and per-vPC member state.
4
+
5
+metrics:
6
+ # ---- vPC peer-keepalive operational status (per domain) ----
7
+ - MIB: CISCO-VPC-MIB
8
+ table:
9
+ OID: 1.3.6.1.4.1.9.9.807.1.1.2
10
+ name: cVpcPeerKeepAliveTable
11
+ symbols:
12
+ - OID: 1.3.6.1.4.1.9.9.807.1.1.2.1.2
13
+ name: cVpcPeerKeepAliveStatus
14
+ chart_meta:
15
+ description: VPC peer-keepalive link operational status
16
+ family: 'Network/VPC/PeerKeepAlive/Status'
17
+ unit: "{status}"
18
+ mapping:
19
+ 1: disabled
20
+ 2: alive
21
+ 3: peer_unreachable
22
+ 4: alive_but_domain_id_mismatch
23
+ 5: suspended_as_issu
24
+ 6: suspended_as_dest_ip_unreachable
25
+ 7: suspended_as_vrf_unusable
26
+ 8: misconfigured
27
+ - OID: 1.3.6.1.4.1.9.9.807.1.1.2.1.4
28
+ name: cVpcPeerKeepAliveMsgSendStatus
29
+ chart_meta:
30
+ description: Status of the most recent peer-keepalive message transmission
31
+ family: 'Network/VPC/PeerKeepAlive/SendStatus'
32
+ unit: "{status}"
33
+ mapping:
34
+ 1: success
35
+ 2: failure
36
+ - OID: 1.3.6.1.4.1.9.9.807.1.1.2.1.7
37
+ name: cVpcPeerKeepAliveMsgRcvrStatus
38
+ chart_meta:
39
+ description: Status of the most recent peer-keepalive message reception
40
+ family: 'Network/VPC/PeerKeepAlive/ReceiveStatus'
41
+ unit: "{status}"
42
+ mapping:
43
+ 1: success
44
+ 2: failure
45
+ metric_tags:
46
+ - tag: vpc_domain_id
47
+ index: 1
48
+
49
+ # ---- vPC domain role and dual-active detection (per domain) ----
50
+ - MIB: CISCO-VPC-MIB
51
+ table:
52
+ OID: 1.3.6.1.4.1.9.9.807.1.2.1
53
+ name: cVpcRoleTable
54
+ symbols:
55
+ - OID: 1.3.6.1.4.1.9.9.807.1.2.1.1.2
56
+ name: cVpcRoleStatus
57
+ chart_meta:
58
+ description: VPC role status of this device in the domain
59
+ family: 'Network/VPC/Domain/Role'
60
+ unit: "{status}"
61
+ mapping:
62
+ 1: primary_secondary
63
+ 2: primary
64
+ 3: secondary_primary
65
+ 4: secondary
66
+ 5: none_established
67
+ - OID: 1.3.6.1.4.1.9.9.807.1.2.1.1.3
68
+ name: cVpcDualActiveDetectionStatus
69
+ chart_meta:
70
+ description: Whether a dual-active (split-brain) condition is detected
71
+ family: 'Network/VPC/Domain/DualActive'
72
+ unit: "{status}"
73
+ mapping:
74
+ 1: detected
75
+ 2: not_detected
76
+ metric_tags:
77
+ - tag: vpc_domain_id
78
+ index: 1
79
+ - tag: _vpc_system_oper_mac
80
+ symbol:
81
+ OID: 1.3.6.1.4.1.9.9.807.1.2.1.1.5
82
+ name: cVpcSystemOperMacAddress
83
+ format: mac_address
84
+
85
+ # ---- vPC peer-keepalive statistics (per domain) ----
86
+ - MIB: CISCO-VPC-MIB
87
+ table:
88
+ OID: 1.3.6.1.4.1.9.9.807.1.3.1
89
+ name: cVpcStatsPeerKeepAliveTable
90
+ symbols:
91
+ - OID: 1.3.6.1.4.1.9.9.807.1.3.1.1.2
92
+ name: cVpcStatsPeerKeepAliveMsgsSent
93
+ chart_meta:
94
+ description: Number of peer-keepalive messages sent
95
+ family: 'Network/VPC/PeerKeepAlive/Messages/Sent'
96
+ unit: "{message}/s"
97
+ - OID: 1.3.6.1.4.1.9.9.807.1.3.1.1.3
98
+ name: cVpcStatsPeerKeepAliveMsgsRcved
99
+ chart_meta:
100
+ description: Number of peer-keepalive messages received from peer
101
+ family: 'Network/VPC/PeerKeepAlive/Messages/Received'
102
+ unit: "{message}/s"
103
+ - OID: 1.3.6.1.4.1.9.9.807.1.3.1.1.5
104
+ name: cVpcStatsPeerStatusChangeCount
105
+ chart_meta:
106
+ description: Number of times the peer status changed (peer flaps)
107
+ family: 'Network/VPC/PeerKeepAlive/StatusChanges'
108
+ unit: "{change}/s"
109
+ metric_tags:
110
+ - tag: vpc_domain_id
111
+ index: 1
112
+
113
+ # ---- vPC host-link (member) status (per domain + vPC ID) ----
114
+ - MIB: CISCO-VPC-MIB
115
+ table:
116
+ OID: 1.3.6.1.4.1.9.9.807.1.4.2
117
+ name: cVpcStatusHostLinkTable
118
+ symbols:
119
+ - OID: 1.3.6.1.4.1.9.9.807.1.4.2.1.4
120
+ name: cVpcStatusHostLinkStatus
121
+ chart_meta:
122
+ description: Current status of this vPC member link
123
+ family: 'Network/VPC/Member/Status'
124
+ unit: "{status}"
125
+ mapping:
126
+ 1: down
127
+ 2: down_star
128
+ 3: up
129
+ - OID: 1.3.6.1.4.1.9.9.807.1.4.2.1.5
130
+ name: cVpcStatusHostLinkConsistencyStatus
131
+ chart_meta:
132
+ description: Configuration consistency check result for this vPC member
133
+ family: 'Network/VPC/Member/Consistency'
134
+ unit: "{status}"
135
+ mapping:
136
+ 1: success
137
+ 2: failed
138
+ 3: not_applicable
139
+ metric_tags:
140
+ - tag: vpc_domain_id
141
+ index: 1
142
+ - tag: vpc_id
143
+ index: 2
144
+ - tag: _vpc_member_ifindex
145
+ symbol:
146
+ OID: 1.3.6.1.4.1.9.9.807.1.4.2.1.3
147
+ name: cVpcStatusHostLinkIfIndex
148
+ - tag: _vpc_consistency_detail
149
+ symbol:
150
+ OID: 1.3.6.1.4.1.9.9.807.1.4.2.1.6
151
+ name: cVpcStatusHostLinkConsistencyDetail
src/go/plugin/go.d/config/go.d/snmp.profiles/default/_cisco-ntp.yaml
new
+82
@@ -0,0 +1,82 @@
1
+# Cisco NTP metrics (system clock quality and peer synchronization).
2
+# MIB: CISCO-NTP-MIB (1.3.6.1.4.1.9.9.168)
3
+# Universal across IOS, IOS-XE, and NX-OS.
4
+
5
+metrics:
6
+ # ---- NTP system scalars ----
7
+ - MIB: CISCO-NTP-MIB
8
+ symbol:
9
+ OID: 1.3.6.1.4.1.9.9.168.1.1.1.0
10
+ name: cntpSysLeap
11
+ chart_meta:
12
+ description: NTP leap second indicator (alarm = clock not synchronized)
13
+ family: 'System/NTP/Leap'
14
+ unit: "{status}"
15
+ mapping:
16
+ 0: no_warning
17
+ 1: add_second
18
+ 2: subtract_second
19
+ 3: alarm
20
+
21
+ - MIB: CISCO-NTP-MIB
22
+ symbol:
23
+ OID: 1.3.6.1.4.1.9.9.168.1.1.2.0
24
+ name: cntpSysStratum
25
+ chart_meta:
26
+ description: NTP stratum level of the local clock (1=primary, 16=unsynchronized)
27
+ family: 'System/NTP/Stratum'
28
+ unit: "{stratum}"
29
+
30
+ - MIB: CISCO-NTP-MIB
31
+ symbol:
32
+ OID: 1.3.6.1.4.1.9.9.168.1.1.11.0
33
+ name: cntpSysSrvStatus
34
+ chart_meta:
35
+ description: NTP service operational status
36
+ family: 'System/NTP/ServiceStatus'
37
+ unit: "{status}"
38
+ mapping:
39
+ 1: unknown
40
+ 2: not_running
41
+ 3: not_synchronized
42
+ 4: sync_to_local
43
+ 5: sync_to_refclock
44
+ 6: sync_to_remote_server
45
+
46
+ # ---- NTP peer table ----
47
+ - MIB: CISCO-NTP-MIB
48
+ table:
49
+ OID: 1.3.6.1.4.1.9.9.168.1.2.1
50
+ name: cntpPeersVarTable
51
+ symbols:
52
+ - OID: 1.3.6.1.4.1.9.9.168.1.2.1.1.9
53
+ name: cntpPeersStratum
54
+ chart_meta:
55
+ description: Stratum level of the NTP peer
56
+ family: 'System/NTP/Peer/Stratum'
57
+ unit: "{stratum}"
58
+ - OID: 1.3.6.1.4.1.9.9.168.1.2.1.1.7
59
+ name: cntpPeersLeap
60
+ chart_meta:
61
+ description: Leap indicator advertised by the NTP peer
62
+ family: 'System/NTP/Peer/Leap'
63
+ unit: "{status}"
64
+ mapping:
65
+ 0: no_warning
66
+ 1: add_second
67
+ 2: subtract_second
68
+ 3: alarm
69
+ - OID: 1.3.6.1.4.1.9.9.168.1.2.1.1.21
70
+ name: cntpPeersReach
71
+ chart_meta:
72
+ description: Reachability shift register (0-255, 8 bits = 8 recent polls, 255 = all recent polls succeeded)
73
+ family: 'System/NTP/Peer/Reachability'
74
+ unit: "1"
75
+ metric_tags:
76
+ - tag: ntp_peer_assoc_id
77
+ index: 1
78
+ - tag: _ntp_peer_address
79
+ symbol:
80
+ OID: 1.3.6.1.4.1.9.9.168.1.2.1.1.3
81
+ name: cntpPeersPeerAddress
82
+ format: ip_address
src/go/plugin/go.d/config/go.d/snmp.profiles/default/cisco-nexus.yaml
+8
@@ -3,6 +3,14 @@
3
extends:
4
- _system-base.yaml
5
- _cisco-base.yaml
6
+ - _cisco-nexus-vpc.yaml
7
+ - _cisco-nexus-system-ext.yaml
8
+ - _cisco-nexus-feature.yaml
9
+ - _cisco-nexus-nve.yaml
10
+ - _cisco-nexus-otv.yaml
11
+ - _cisco-hsrp.yaml
12
+ - _cisco-ntp.yaml
13
+ - _cisco-bfd.yaml
14
15
metadata:
16
device:
src/health/health.d/snmp_cisco_nexus.conf
new
+111
@@ -0,0 +1,111 @@
1
+# Health alerts for Cisco Nexus SNMP monitoring.
2
+# These alerts fire on metrics from the cisco-nexus SNMP profile.
3
+# Chart contexts use the pattern: snmp.device_prof_<metric_name>
4
+
5
+# --- vPC (Virtual Port Channel) alerts ---
6
+
7
+ template: snmp_cisco_nexus_vpc_peer_keepalive
8
+ on: snmp.device_prof_cVpcPeerKeepAliveStatus
9
+ class: Errors
10
+ type: Switch
11
+component: VPC
12
+ lookup: average -1m unaligned percentage of alive
13
+ units: %
14
+ every: 10s
15
+ warn: $this < 100
16
+ delay: down 1m multiplier 1.5 max 5m
17
+ summary: vPC peer-keepalive not alive (domain ${label:vpc_domain_id})
18
+ info: vPC peer-keepalive link is not in 'alive' state on domain ${label:vpc_domain_id}
19
+ to: sysadmin
20
+
21
+ template: snmp_cisco_nexus_vpc_dual_active
22
+ on: snmp.device_prof_cVpcDualActiveDetectionStatus
23
+ class: Errors
24
+ type: Switch
25
+component: VPC
26
+ lookup: average -1m unaligned percentage of detected
27
+ units: %
28
+ every: 10s
29
+ crit: $this > 0
30
+ delay: down 15s multiplier 1.5 max 5m
31
+ summary: vPC dual-active (split-brain) detected (domain ${label:vpc_domain_id})
32
+ info: vPC dual-active condition detected on domain ${label:vpc_domain_id} — both switches may be forwarding independently, risking loops
33
+ to: sysadmin
34
+
35
+ template: snmp_cisco_nexus_vpc_member_consistency
36
+ on: snmp.device_prof_cVpcStatusHostLinkConsistencyStatus
37
+ class: Errors
38
+ type: Switch
39
+component: VPC
40
+ lookup: average -1m unaligned percentage of failed
41
+ units: %
42
+ every: 10s
43
+ warn: $this > 0
44
+ delay: down 1m multiplier 1.5 max 5m
45
+ summary: vPC member consistency check failed (domain ${label:vpc_domain_id} vPC ${label:vpc_id})
46
+ info: vPC member ${label:vpc_id} on domain ${label:vpc_domain_id} has a configuration consistency check failure
47
+ to: sysadmin
48
+
49
+# --- HSRP (Hot Standby Router Protocol) alerts ---
50
+
51
+ template: snmp_cisco_nexus_hsrp_not_active_standby
52
+ on: snmp.device_prof_cHsrpGrpStandbyState
53
+ class: Errors
54
+ type: Switch
55
+component: HSRP
56
+ lookup: average -1m unaligned percentage of active,standby
57
+ units: %
58
+ every: 10s
59
+ warn: $this < 100
60
+ delay: down 1m multiplier 1.5 max 5m
61
+ summary: HSRP group not active/standby (${label:interface} group ${label:hsrp_group})
62
+ info: HSRP group ${label:hsrp_group} on ${label:interface} is not in active or standby state
63
+ to: sysadmin
64
+
65
+# --- BFD (Bidirectional Forwarding Detection) alerts ---
66
+
67
+ template: snmp_cisco_nexus_bfd_session_down
68
+ on: snmp.device_prof_ciscoBfdSessState
69
+ class: Errors
70
+ type: Switch
71
+component: BFD
72
+ lookup: average -1m unaligned percentage of down
73
+ units: %
74
+ every: 10s
75
+ warn: $this > 0
76
+ delay: down 30s multiplier 1.5 max 5m
77
+ summary: BFD session down (session ${label:bfd_session_index})
78
+ info: BFD session ${label:bfd_session_index} is in 'down' state — sub-second failure detection triggered
79
+ to: sysadmin
80
+
81
+# --- NTP alerts ---
82
+
83
+ template: snmp_cisco_nexus_ntp_not_synchronized
84
+ on: snmp.device_prof_cntpSysSrvStatus
85
+ class: Errors
86
+ type: Switch
87
+component: NTP
88
+ lookup: average -5m unaligned percentage of sync_to_refclock,sync_to_remote_server,sync_to_local
89
+ units: %
90
+ every: 10s
91
+ warn: $this < 100
92
+ delay: down 5m multiplier 1.5 max 15m
93
+ summary: NTP service not synchronized
94
+ info: Cisco NTP service is not synchronized to any reference clock or remote server
95
+ to: sysadmin
96
+
97
+# --- NX-OS Feature Control alerts ---
98
+
99
+ template: snmp_cisco_nexus_feature_enabled_not_running
100
+ on: snmp.device_prof_cfcFeatureCtrlOpStatus2
101
+ class: Errors
102
+ type: Switch
103
+component: NX-OS
104
+ lookup: average -1m unaligned percentage of enabled_not_running
105
+ units: %
106
+ every: 10s
107
+ warn: $this > 0
108
+ delay: down 2m multiplier 1.5 max 10m
109
+ summary: NX-OS feature enabled but not running (${label:feature_name})
110
+ info: NX-OS feature '${label:feature_name}' is enabled but not running — the feature process may have crashed
111
+ to: sysadmin