Homeโ€บ๐Ÿ“ก SNMP Extensionsโ€บModule 31 min read ยท 4/16

Groups & Feature Sets

Hands-on2 exercises

Groups and Subgroups

An SNMP extension organizes polling into groups and subgroups:

snmp:
  - group: Device Default       # top-level group
    interval:
      minutes: 1
    subgroups:
      - subgroup: CPU           # subgroup inside the group
        table: true
      - subgroup: Interfaces
        table: true

Groups poll independently. If one group hangs, the others keep working.

Why Multiple Groups Matter

Real-world problem: a device's interface table hangs for 3 minutes. If CPU and interfaces are in the same group, you lose ALL data. If they're in separate groups, CPU keeps polling.

โš ๏ธ This is the exact bug we fixed in ACI v0.0.5 โ€” a hanging interface walk blocked CPU/memory for 180 seconds.

๐Ÿ›  Try it

Move the Interfaces subgroup into its own separate group so it polls independently from CPU. Give the new group its own interval and dimensions.

extension.yamlYAML
Loading...

Feature Sets

Add featureSet: to a subgroup and users can toggle it on/off in the Dynatrace UI:

subgroups:
  - subgroup: CPU and Memory
    featureSet: CPU and Memory    # โ† toggleable
    table: true
    metrics: ...

๐Ÿ’ก Always add featureSets. Users monitoring 1000 interfaces don't want to poll temperature sensors they don't care about.

๐Ÿ›  Try itExercise 2

Add featureSet: labels to both subgroups so users can toggle them independently.

extension.yamlYAML
Loading...

Dimension Filters

Let users filter which interfaces to monitor using vars:

vars:
  - id: if_filter
    displayName: Interface Filter
    type: pattern

# In the subgroup:
dimensions:
  - key: if.name
    value: oid:1.3.6.1.2.1.31.1.1.1.1
    filter: var:if_filter

Users can then enter patterns like GigabitEthernet* in the monitoring config.

What's Next

Module 4 covers advanced SNMP patterns โ€” filtering out empty values, handling 32-bit vs 64-bit counters, and SNMP version differences.