Docs > Platform Observability > Getting Started with Storage & Database
Getting Started with Storage & Database
Overview
This guide introduces AppStatus Storage & Data Layer and covers:
- Disk capacity and growth rate per volume
- Database statements ranked by total time, not single-run time
- Cache hit ratio as an early warning for latency
- Message queue depth, lag and drain estimate
- Alerting on trend, not just on a single threshold
What is Storage & Data Layer in AppStatus?
Storage covers the stateful half of your stack: the disks that fill up, the queries that get slower as data grows, and the queues that back up when a consumer falls behind.
Database statements are normalised before ranking, so one slow query shape appears as a single row with its total cost, rather than thousands of near-identical entries you have to group by eye.
Key capabilities:
- Volume capacity with growth rate, not just percentage full
- Query performance ranked by total time across all executions
- Cache hit ratio trend per database
- Queue depth and consumer lag with a drain estimate
- A trace-derived query view that needs nothing installed on the database
What you will see
What the slow-query view looks like
Scroll the table sideways to see every column.
The top row is fast per call and still your biggest cost. Rank by total time, not mean.
Troubleshooting
A disk alert fires at 80% every week and nothing happens
Alert on growth rate as well as absolute usage. A volume steady at 80% is fine; one that climbed from 40% in three days needs attention even though it is at the same number.
Queue depth is high but nothing seems broken
Check lag and the drain estimate. A queue that is deep but draining steadily is healthy — one that is shallow and growing is not. Depth alone does not tell you which you have.
Query latency rose with no code change
Look at cache hit ratio first. A falling ratio as data grows produces exactly this — slower queries with identical SQL — and it predicts the problem before users feel it.
Operational Guidance
- Query statements are normalised before ranking, so one slow shape shows as one row, not thousands.
- A falling cache hit ratio predicts a latency problem before users feel it.
- A queue that is deep but draining is healthy; one that is shallow and growing is not.
Step-by-Step Setup
Storage covers three different things that fail differently — disks, queries and queues. Set each one up against trend rather than a single number, because all three warn you well before they break if you are measuring the right thing.
Before you start
- The agent installed for disk metrics
- A connected database or queue for the other views
- 1
Confirm volumes report
Open the storage view and confirm each host lists its volumes with usage and growth.
WhereStorage → Volumes - 2
Alert on growth, not just usage
Set capacity alerts on rate of change alongside absolute percentage. A volume steady at 80% is fine; one that climbed from 40% in three days is not, and a percentage-only alert cannot tell them apart.
WhereStorage → ThresholdsTipThis is the single change that stops disk alerts from being ignored.
- 3
Review the slow-query list
Open the query view and read it ranked by total time. Statements are normalised first, so one slow shape appears once with its true total cost rather than as thousands of near-identical rows.
WhereStorage → Queries - 4
Add queue thresholds
For anything with a consumer, alert on sustained depth with a rising trend rather than on a single spike. Compare against lag — deep but draining is healthy, shallow but growing is not.
WhereStorage → Queues
Configuration Options
Every option you can set, what each choice means, and what to pick. Use this as a reference while you fill in the form.
What to alert on
| Field | Options | What it does | Recommended |
|---|---|---|---|
| Volume usage | Percentage | How full a disk is. | Pair with growth rate or it will be ignored. |
| Growth rate | Per day | How fast it is filling. | The number that actually predicts an outage. |
| Query ranking | Total / mean time | How slow statements are ordered. | Total time. A fast query run millions of times is your real cost. |
| Queue lag | Messages / time | How far consumers trail producers. | Lag matters more than depth for streaming systems. |
Feature Reference
Every feature, where to find it in the app, and what it does. Use this when you know what you want to do but not where it lives.
| Feature | Where in app | Description |
|---|---|---|
| Volume capacity | Storage → Volumes | Usage and growth rate per mount. |
| Query performance | Storage → Queries | Normalised statements ranked by total time, with cache hit ratio. |
| Queue health | Storage → Queues | Depth, lag and an estimate of how long a backlog takes to drain. |
| Trace-derived queries | APM → trace | Query timing from traces, needing nothing installed on the database. |
Next Steps
Continue building your monitoring stack:
