Multi-tenant Grafana health scores for a managed IT services provider
Python collectors pull tickets, endpoints, backups, identity and network data from each client's tools and score them in Grafana, one view per tenant.
Client and industry
TWE Solutions
Managed IT services and endpoint management, United States
The problem
The client manages IT for many companies. The state of each customer was spread across a ticketing system, an endpoint platform, backup tools, identity providers and network monitoring. Account managers had no single, comparable answer to "is this customer healthy?"
What we did
- Collectors for five areas. Python collectors run on a schedule and write to InfluxDB:
- service tickets by queue from Autotask
- endpoint inventory from the client's own endpoint platform, checked against Auvik
- backup jobs from Veeam, native Azure VM backups and Microsoft 365 backups
- identity from Active Directory, Azure AD and Okta
- network devices from Auvik
- A score per area. Each Grafana dashboard turns the raw data into a 0 to 100 score with written rules. For example, endpoints score zero if any server is offline or antivirus is off on more than 10 percent of machines.
- One tenant per customer. An installer creates the Grafana organisation, the InfluxDB bucket and a write-only token for each customer, then imports the chosen dashboards and alerts through the APIs.
Stack used
Python, InfluxDB and Grafana, with Autotask, Auvik, Veeam, Azure, Okta and Active Directory as data sources.
Duration
1 year
Outcome
Python collectors and Grafana dashboards that score each customer's IT security and backup compliance, now used by the client with its own paying customers
Start with an Observability Audit
In one to two weeks we review your monitoring, logs and alerts and tell you what to fix first.
Related case studies
Live plant data from Modbus controllers into Grafana for a geothermal company
Telegraf reads cogeneration units, heat pumps and meters over Modbus at three sites. Energy monitors and market prices sit beside them in Grafana.
- Telegraf
- InfluxDB
- Grafana
- Modbus
- Python
SLA reporting and a managed Grafana migration for a building operations company
We turned incident records and monitoring data into monthly and quarterly SLA reports, and moved Grafana dashboards to Amazon Managed Grafana.
- Grafana
- Amazon Managed Grafana
- PostgreSQL
- Datadog
- Python
AWS platform and fleet monitoring for a commercial coffee roaster manufacturer
Cut monitoring costs by about 80 percent by moving from Logz.io to managed Grafana, then automated equipment onboarding and fleet updates.
- Grafana
- Prometheus
- Terraform
- AWS IoT Core
- AWS Lambda
- Amazon ECS
- OpenTelemetry
- Ansible
- Python