Skip to main content

Prometheus exporter for AVM Fritz! Devices

Project description

Fritz! exporter for prometheus

⚠️ v3.0.0 breaking change — action may be required The default listen address has changed from 0.0.0.0 to 127.0.0.1. If Prometheus scrapes this exporter over the network and you have not set listen_address / FRITZ_LISTEN_ADDRESS explicitly, the exporter will no longer be reachable after upgrading. Set listen_address: 0.0.0.0 in your config or FRITZ_LISTEN_ADDRESS=0.0.0.0 in your environment to restore the old behaviour. See the upgrade notes for full details including the home automation metric label change.

Reliability Rating Maintainability Rating Security Rating Coverage Quality Gate Status

ReadTheDocs Dependabot Tests Build

This is a prometheus exporter for AVM Fritz! home network devices commonly found in Europe. This exporter uses the devices builtin TR-064 API via the fritzconnection python module.

The exporter should work with Fritz!Box and Fritz!Repeater Devices (and maybe others). It actively checks for supported metrics and queries the for all devices configured (Yes, it has multi-device support for all you Mesh users out there.)

It has been tested against an AVM Fritz!Box 7590 (DSL), a Fritz!Repeater 2400 and a Fritz!WLAN Repeater 1750E. If you have another box and data is missing, please file an issue or PR on GitHub.

Documentation

Check out the full documentation at ReadTheDocs

Attention - Prometheus required

As the scope of this exporter lies on a typical home device, this also means that there are a lot of people interested in it, who may not have had any contact with Prometheus. As a result if this there have been some misunderstandings in the past, how this all works.

To avoid frustration you will need to know this:

You must setup and configure Prometheus separately! If you are running in plain docker or docker-compose there is a docker-compose setup for Prometheus at https://github.com/vegasbrianc/prometheus which also includes Grafana to actually produce dashboards. This may work out of the box or can be used as a starting point.

The whole setup required is:

  • fritz_exporter: connects to your Fritz device, reads the metrics and makes them available in a format Prometheus understands
  • prometheus: connects to the exporter at regular time intervals, reads the data and stores it in its database
  • grafana: connects to prometheus and can query the database of metrics for timeseries and create dashboards from it.

You cannot connect grafana to the exporter directly. This will not work.

Please check the "Quickstart" in the documentation at ReadTheDocs for a simple setup.

Disclaimer

Fritz! and AVM are registered trademarks of AVM GmbH. This project is not associated with AVM or Fritz other than using the devices and their names to refer to them.

Copyright

Copyright 2019-2026 Patrick Dreker patrick@dreker.de

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fritz_exporter-3.1.2.tar.gz (877.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fritz_exporter-3.1.2-py3-none-any.whl (29.8 kB view details)

Uploaded Python 3

File details

Details for the file fritz_exporter-3.1.2.tar.gz.

File metadata

  • Download URL: fritz_exporter-3.1.2.tar.gz
  • Upload date:
  • Size: 877.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for fritz_exporter-3.1.2.tar.gz
Algorithm Hash digest
SHA256 bf869136337b64e55758ab9a7a57c7732b4eb78679bb68a6e5481996f008edcc
MD5 9dc1d7700c73830f492cc2a2b4bdc0ad
BLAKE2b-256 b69a79c98ce3455bbd15e91fbcf95b3fea02e3ab630708d1d0db318dea388174

See more details on using hashes here.

File details

Details for the file fritz_exporter-3.1.2-py3-none-any.whl.

File metadata

  • Download URL: fritz_exporter-3.1.2-py3-none-any.whl
  • Upload date:
  • Size: 29.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for fritz_exporter-3.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 f7034067830c3f389da3b8549acb3e9b1c4922b4483c644c5840d5d3766dd46e
MD5 c8cf71a55a60ca4da30cbef4365c01de
BLAKE2b-256 3ae38ed9031a8051280a3cc20e492b9611df46d2d833d9ec48f6c21898daf904

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page