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.
Client and industry
Bellwether Coffee
Commercial coffee roaster manufacturing, United States
The problem
The client sells connected roasters that run in cafés and shops. The team needed to know when a machine in the field misbehaved, ship software to the fleet without bricking devices, and run the cloud side across several environments without hand-built infrastructure.
Roaster and cloud application logs went to Logz.io, which cost about $10,000 a month at the usage the client had reached. Much of that volume was debug logging nobody read.
What we did
- One managed Grafana for roasters and cloud. We brought data from the roasters and the cloud application into a managed Grafana instance, with a custom Prometheus data source for the device metrics, and retired Logz.io.
- Cleaner logs. We removed debug logs and other noise at the source, so only data the team uses is stored and paid for.
- Dashboards and alerts. Grafana dashboards and alert rules cover the fleet and the cloud services side by side. Amazon CloudWatch metrics are exported in Prometheus format and shipped with the OpenTelemetry Collector.
- AWS platform as code. Separate engineering, staging and production accounts, built from shared Terraform modules with Terragrunt: networking, Amazon ECS services, container registries, build pipelines and encrypted secrets.
- Telemetry from the fleet. Roasters send logs and events through AWS IoT Core and Amazon Kinesis to AWS Lambda functions, which store them and forward them for search. A fleet data-health job flags machines that stop reporting.
- Pipelines for new equipment. Adding a new type of equipment is automated through pipelines, so onboarding no longer relies on manual steps.
- Safe device updates. A pipeline builds the roaster operating system image and versioned update bundles. Ansible playbooks install updates over the air and roll a machine back if a step fails.
- Further projects. Once monitoring was in place, we took on more work for the client, including authentication.
Stack used
Grafana, Prometheus, Terraform, Terragrunt, AWS IoT Core, Amazon Kinesis, AWS Lambda, Amazon ECS, OpenTelemetry, Ansible and Python.
Duration
2 years
Outcome
Monthly monitoring cost fell from about $10,000 to about $2,000.
Moving from Logz.io to a managed Grafana instance with a custom Prometheus data source, and removing debug logs that were not needed, cut the monthly bill by roughly 80 percent.
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
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.
- Python
- InfluxDB
- Grafana