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

Build, Sign & Deploy

Tutorial

Build Pipeline

Three steps to get your extension into Dynatrace:

1. Build ZIP โ†’ 2. Sign โ†’ 3. Upload

Step 1: Build

# Using dt-extensions-sdk (recommended)
pip install dt-extensions-sdk
dt-sdk build

# Or using dt-cli
pip install dt-cli
dt ext assemble

Step 2: Sign

Extension signing workflow from Dynatrace docs

Every extension must be signed with a certificate. Dynatrace verifies the signature on upload.

# Generate certificates (one-time setup)
dt-sdk gencerts

# Sign the extension
dt-sdk build --sign

โš ๏ธ The root certificate must be uploaded to BOTH:
1. Dynatrace credential vault (for JMX extensions)
2. ActiveGate filesystem: /var/lib/dynatrace/remotepluginmodule/agent/conf/certificates/

Step 3: Upload

# Upload via API
curl -X POST "https://{env-id}.live.dynatrace.com/api/v2/extensions" \
  -H "Authorization: Api-Token {token}" \
  -F "file=@bundle.zip"

# Or use the Extensions app in the UI
# Ctrl+K โ†’ "Extensions" โ†’ Upload

20+ SNMP extensions available in the Dynatrace Hub

Activation Checklist

  1. Upload extension โ†’ appears in Extensions app
  2. Activate the version (only 1 active at a time, up to 10 stored)
  3. Add monitoring configuration โ†’ select ActiveGate group โ†’ define devices
  4. Select feature sets โ†’ set variables โ†’ activate
  5. Wait 1-2 minutes โ†’ check for metrics in Data Explorer

๐Ÿ›  Try it: Use the VS Code extension (dynatrace-extensions) โ€” it has build, sign, upload, and activate all in one click.

Troubleshooting

Problem                              Fix
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
No metrics after activation          Check ActiveGate group assignment
"Invalid signature" on upload        Re-sign, check cert on ActiveGate
Metrics appear but no entities       Check topology idPattern dimensions
Extension shows "Error" status       Check EEC logs on ActiveGate