SNMP: route Catalyst 1300 / CBS350 to cisco-sb with serial_number metadata#23939
SNMP: route Catalyst 1300 / CBS350 to cisco-sb with serial_number metadata#23939ian28223 wants to merge 1 commit into
Conversation
Catalyst 1200/1300 (e.g. C1300-24P-4G) and Cisco Business 350 (CBS350) run the SMB software stack rather than IOS-XE, so they belong in cisco-sb.yaml alongside the rest of the Cisco Small Business switch family. Their chassis serial lives at the documented ENTITY-MIB index 67109120 (entPhysicalSerialNum.67109120) per Cisco's SMB switching guide. - cisco-sb: add sysobjectid 1.3.6.1.4.1.9.6.1.1004.52.5 (CBS350-48P-4G) and 1.3.6.1.4.1.9.1.3233 (ciscoC130024P4G); add serial_number metadata pointing at entPhysicalSerialNum.67109120. - cisco-catalyst: add sysobjectid 1.3.6.1.4.1.9.1.3079 (ciscoC9200CX12P2X2G). Serial collection for this device requires dynamic chassis-row resolution (entPhysicalClass = chassis) which is not yet supported; tracked as an FR. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
🛑 Gate Violations
|
Validation ReportAll 21 validations passed. Show details
|
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 84df31d240
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
| # Catalyst 1200/1300 (e.g. C1300-24P-4G) and Cisco Business 350 (CBS350) | ||
| # run the SMB software stack — not IOS-XE — so they belong here rather | ||
| # than in cisco-catalyst.yaml, which targets IOS-XE Catalyst chassis. | ||
| - 1.3.6.1.4.1.9.1.3233 # ciscoC130024P4G (Catalyst 1300 24-port) |
There was a problem hiding this comment.
Cover the rest of the Catalyst 1200/1300 OIDs
For Catalyst 1200/1300 models other than C1300-24P-4G, this exact sysObjectID leaves them on the generic Cisco profile instead of cisco-sb; the resolver only does exact/fnmatch pattern matching in _profile_for_sysobject_oid, and the CISCO-PRODUCTS-MIB has many adjacent C1200/C1300 IDs such as .3210-.3225 and .3226-.3253. In those environments the new SMB metrics and serial-number metadata still won't be collected, despite the comment saying the whole Catalyst 1200/1300 family belongs here.
Useful? React with 👍 / 👎.
What does this PR do?
Routes Catalyst 1200/1300 and Cisco Business 350 (CBS350) devices to the
cisco-sbprofile and adds aserial_numbermetadata source for them.cisco-sb.yaml:sysobjectid1.3.6.1.4.1.9.6.1.1004.52.5(CBS350-48P-4G).sysobjectid1.3.6.1.4.1.9.1.3233(ciscoC130024P4G, Catalyst 1300 24-port).serial_numbermetadata readingentPhysicalSerialNum.67109120(1.3.6.1.2.1.47.1.1.1.1.11.67109120), the documented chassis index for these devices per Cisco's SMB switching OID reference.cisco-catalyst.yaml:sysobjectid1.3.6.1.4.1.9.1.3079(ciscoC9200CX12P2X2G). Noserial_numbermetadata change — see Motivation.Motivation
AGENT-15682. A customer reported missing
serial_numberdevice metadata for Cisco Catalyst 1300 and CBS350 switches.Catalyst 1200/1300 (e.g.
C1300-24P-4G) and CBS350 do not run IOS-XE — they ship with Cisco's SMB software stack and share the OID layout of the rest of the Cisco Small Business switch family. Thecisco-catalystprofile targets IOS-XE Catalyst chassis (which read serial fromCISCO-STACK-MIB::chassisSerialNumberString), so these SMB-stack devices belong incisco-sbinstead.For the Catalyst 9200CX (
ciscoC9200CX12P2X2G,9.1.3079), the device matchescisco-catalystbut does not populatechassisSerialNumberStringand its chassis serial lives at a non-deterministicentPhysicalIndex. Per AGENT-15682 a generic index-based fallback was rejected as unsafe (entPhysicalIndexis arbitrary; index.1is not guaranteed to be the chassis). The correct fix is dynamic chassis-row resolution — walking theentPhysicaltable and selecting the row whereentPhysicalClass = chassis(3)— which the SNMP profile schema does not currently support. An FR will be opened to add that capability; until then the9.1.3079sysobjectid is added so the profile matches and all other metrics/metadata collect, whileserial_numberremains unset.Review checklist (to be filled by reviewers)
qa/requiredif this PR needs QA validation, orqa/skip-qaif it does not. Exactly one of the two is required.backport/<branch-name>label to the PR and it will automatically open a backport PR once this one is merged