The purpose of this document is to create a specification of the Estuary Metrics API.
Purpose
In order for any consumers to monitor estuary, be it their own node or the Outercore hosted estuary, there needs to be a way to monitor and consume different functional metrics that estuary provides.
As of today, there’s only one way to monitor metrics for estuary
For System metrics, in addition to aggregate, we also want breakdown by shuttle / primary node.
System
[x] Total objects pinned (Query) `selectcount(*) from contents where pinning**`
[x] Total TiBs uploaded (Query)`selectsum(size) from objects`
[x] Total TiBs sealed data on Filecoin `selectsum(size) from contents where pinning and active`
[x] Available free space (custom Grafana plugin)
[x] Total space capacity (custom Grafana plugin)
[ ] Downtime (this is usually notoriously difficult to define) (custom Grafana plugin)
[ ] Performance (this needs to be fleshed out)
Users
[x] Total number of Storage Providers (Query) select count(*) from storage_miners
[x] #12
[ ] Ongoing user activity — DAUs, WAUs, MAUs etc. Are users coming back? (custom Grafana plugin) - we would need to build a tracking system for this - Persistent layer for Tracking
For Storage/Retrieval deal metrics, in addition to aggregate, we also want the following breakdowns
[x] per day breakdown (Query)
[x] per week breakdown (Query)
[x] per provider breakdown (Query)
Storage
[x] Storage Deal Success Rate (Success % / All Deals)
Metrics Tracking and Metrics API
Overview
The purpose of this document is to create a specification of the Estuary Metrics API.
Purpose
In order for any consumers to monitor estuary, be it their own node or the Outercore hosted estuary, there needs to be a way to monitor and consume different functional metrics that estuary provides.
As of today, there’s only one way to monitor metrics for estuary
1 - thru Grafana
2 - thru public/stats endpoint
Solution: Grafana
Started working on this: https://protocollabs.grafana.net/d/0-0ztE97z/estuary-team-metrics-dashboard?orgId=1&from=now%2Ffy&to=now%2Ffy
Solution: Estuary Metrics API
Tech Components
Use cases
For System metrics, in addition to aggregate, we also want breakdown by shuttle / primary node.
System
Users
For Storage/Retrieval deal metrics, in addition to aggregate, we also want the following breakdowns
Storage
Retrieval
Implementation
https://github.com/application-research/estuary-metrics