What Are Extensions?
Dynatrace Extensions 2.0 let you monitor anything Dynatrace doesn't cover out of the box โ network switches, firewalls, UPS devices, custom APIs. You write a YAML file, Dynatrace does the rest.
Two flavors:
- SNMP โ Pure YAML. Polls network devices. This course.
- Python โ Custom code for REST APIs, CLI, etc. Next course.
The Extension File
Every extension starts with extension.yaml. Here's the minimum:
name: custom:com.dynatrace.extension.my-device
version: 0.0.1
minDynatraceVersion: "1.318.0"
author:
name: Your Name
Rules: name starts with custom:, version is major.minor.patch, minDynatraceVersion is in quotes.
Fill in the 3 header fields. Remember: name starts with custom:, version is X.Y.Z, and minDynatraceVersion needs quotes.
How It Works
Your extension.yaml โ Upload to Dynatrace โ EEC polls the device โ Metrics flow in โ Entities appear โ Screens show data
The EEC (Extension Execution Controller) runs on an ActiveGate. It reads your YAML, polls SNMP devices on a schedule, and sends metrics to Dynatrace.
What's in the Package?
bundle.zip (what you upload)
โโโ extension.zip
โ โโโ extension.yaml โ your code
โ โโโ snmp/ โ MIB files (if needed)
โ โโโ dashboards/ โ dashboard JSON
โโโ extension.zip.sig โ digital signature
Adding SNMP Polling
To actually collect data, add an snmp: section. This tells Dynatrace what to poll:
snmp:
- group: Device Default
interval:
minutes: 1
dimensions:
- key: device.address
value: this:device.address
This polls every 1 minute and captures the device IP. No metrics yet โ we'll add those next.
Add a sys.name dimension that reads the device hostname. The OID is 1.3.6.1.2.1.1.5.0 โ use the oid: prefix.
What's Next
In Module 1, you'll learn about OIDs โ the "addresses" that tell SNMP which data to read from a device. Then in Module 2, you'll turn those OIDs into real metrics.