Skip to main content

NetBox PRTG Plugin

NetBox PRTG Plugin

A NetBox plugin that displays PRTG Network Monitor status on Device and Virtual Machine detail pages.

NetBox Version Python Version License CI PyPI

Features

  • Device Tab: Shows PRTG monitoring summary on device detail pages
  • Virtual Machine Tab: Shows PRTG monitoring summary on VM detail pages
  • Sensor Summary: Displays sensor counts by status (Up, Warning, Down, Paused)
  • Export to PRTG: Create devices in PRTG directly from NetBox with auto-discovery
  • Virtual Chassis Support: Monitors entire stack using VC name and master IP
  • Direct Links: Quick link to view the device in PRTG
  • Caching: Configurable caching to minimize API calls
  • Custom Field: Optional prtg_device_id field for explicit device mapping

Screenshots

Device Tab

Shows sensor status summary with color-coded badges for quick status overview.

Device Tab

Export to PRTG

Export devices from NetBox to PRTG with one click.

Export

Export Confirmation

Confirmation dialog showing device details before export.

Export Confirmation

Settings Page

Displays current configuration and connection status.

Settings Page

Dashboard Widget

PRTG status widget showing sensor counts by status.

Dashboard Widget

Requirements

  • NetBox 4.0.0 or higher
  • PRTG Network Monitor with API access
  • PRTG API Token

Note: This plugin is developed and tested exclusively on NetBox 4.x. It is not compatible with NetBox 3.x due to API and model changes.

Installation

Via pip (recommended)

pip install netbox-prtg

From source

git clone https://github.com/sieteunoseis/netbox-prtg.git
cd netbox-prtg
pip install .

Configuration

  1. Add the plugin to your NetBox configuration.py:
PLUGINS = [
    'netbox_prtg',
]

PLUGINS_CONFIG = {
    'netbox_prtg': {
        'prtg_url': 'https://prtg.example.com',
        'prtg_api_token': 'your-api-token-here',
        'timeout': 30,
        'cache_timeout': 60,
        'verify_ssl': True,
    }
}
  1. Restart NetBox to load the plugin.

Configuration Options

Option Type Default Description
prtg_url string "" PRTG server URL (e.g., https://prtg.example.com)
prtg_api_token string "" API token from PRTG account settings
timeout int 30 API request timeout in seconds
cache_timeout int 60 How long to cache API responses in seconds
verify_ssl bool True Verify SSL certificates

Getting a PRTG API Token

  1. Log into your PRTG web interface
  2. Go to Setup > Account Settings > My Account
  3. Under API Keys, click Create API Key
  4. Copy the token and add it to your NetBox configuration

Usage

Device Matching

The plugin matches NetBox devices to PRTG devices by hostname. The device name in NetBox must match the device name in PRTG.

For explicit mapping, you can set the prtg_device_id custom field on a device with the PRTG object ID.

Virtual Chassis Support

For devices that are members of a Virtual Chassis (VC), the plugin:

  • Uses the VC name for PRTG device lookup/export (not individual member names)
  • Uses the VC master's IP address as the host for monitoring
  • Displays VC information in the PRTG tab

This allows you to monitor an entire switch stack as a single PRTG device.

Viewing Monitoring Status

  1. Navigate to any device or virtual machine detail page
  2. Click the PRTG tab
  3. View the sensor status summary

Exporting Devices to PRTG

When a device is not found in PRTG, you can export it directly:

  1. Click the Export to PRTG button
  2. The device is created in the "NetBox Import" group
  3. Auto-discovery runs to detect available sensors
  4. Move the device to the appropriate group in PRTG as needed

Status Indicators

Status Color Description
Up Green Sensor is healthy
Warning Orange Sensor has warnings
Down Red Sensor is down/critical
Paused Gray Sensor is paused
Unusual Amber Sensor has unusual readings

Development

Setup

cd ~/development
git clone https://github.com/sieteunoseis/netbox-prtg.git
cd netbox-prtg
python -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"

Running Lint Checks

black netbox_prtg/
isort netbox_prtg/
flake8 netbox_prtg/

Testing with NetBox Dev Instance

  1. Add to netbox-dev/configuration/plugins.py
  2. Mount in netbox-dev/docker-compose.yml
  3. Restart: docker-compose restart netbox

API Endpoints Used

The plugin uses the following PRTG API endpoints:

  • GET /api/status.json - Test connection
  • GET /api/table.json?content=devices - Find devices by hostname
  • GET /api/table.json?content=sensors - Get device sensors
  • GET /api/table.json?content=groups - Find groups
  • GET /api/addgroup.htm - Create groups
  • GET /api/adddevice2.htm - Create devices with auto-discovery

Future Enhancements

  • Detailed sensor list view
  • Sensor alerts history
  • Bulk device status view
  • Conditional tab visibility

License

Apache License 2.0

Author

Links

Release files for netbox-prtg 0.4.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for netbox-prtg 0.4.3
File Size Uploaded
netbox_prtg-0.4.3.tar.gz 24.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for netbox-prtg 0.4.3
File Interpreter ABI Platform
netbox_prtg-0.4.3-py3-none-any.whl Python 3 none any Details

Total release size: 50.6 kB

Release files / netbox_prtg-0.4.3.tar.gz

Download URL netbox_prtg-0.4.3.tar.gz
Size 24.5 kB
Tags Source
SHA-256 checksum
How to use checksums
55f792bfa7d931a60341c33075a7b89ef5db1f8215c1def93e43ae4832a6fed9
BLAKE2b-256 checksum
How to use checksums
4eb2aec7fe0ca428078e02c39195d182937e32427cf5712cf5aee462c099733b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 5, 2026.

Transparency log

Release files / netbox_prtg-0.4.3-py3-none-any.whl

Download URL netbox_prtg-0.4.3-py3-none-any.whl
Size 26.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ec604dfae9576310c1509faa0280c4d8ff02be197dc65c23804a24e44c866e0d
BLAKE2b-256 checksum
How to use checksums
2e3ea194a2e99afe1a1a6593e33135a12c5beca9943622ab3d06ea973cc6a1a2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 5, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.4.3 This release

2 release files

0.4.2

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page