Metrics and analytics
Hyperdrive exposes analytics that allow you to inspect query volume, query latency and cache ratios size across all and/or each Hyperdrive configuration in your account.
Metrics
Section titled “Metrics”Hyperdrive currently exports the below metrics as part of the hyperdriveQueriesAdaptiveGroups
GraphQL dataset:
Metric | GraphQL Field Name | Description |
---|---|---|
Queries | count | The number of queries issued against your Hyperdrive in the given time period. |
Cache Status | cacheStatus | Whether the query was cached or not. Can be one of disabled , hit , miss , uncacheable , multiplestatements , notaquery , oversizedquery , oversizedresult , parseerror , transaction , and volatile . |
Query Bytes | queryBytes | The size of your queries, in bytes. |
Result Bytes | resultBytes | The size of your query results, in bytes. |
Connection Latency | connectionLatency | The time (in milliseconds) required to establish new connections from Hyperdrive to your database, as measured from your Hyperdrive connection pool(s). |
Query Latency | queryLatency | The time (in milliseconds) required to query (and receive results) from your database, as measured from your Hyperdrive connection pool(s). |
Event Status | eventStatus | Whether a query responded successfully (complete ) or failed (error ). |
Metrics can be queried (and are retained) for the past 31 days.
View metrics in the dashboard
Section titled “View metrics in the dashboard”Per-database analytics for Hyperdrive are available in the Cloudflare dashboard. To view current and historical metrics for a Hyperdrive configuration:
- Log in to the Cloudflare dashboard ↗ and select your account.
- Go to Workers & Pages > Hyperdrive ↗.
- Select an existing Hyperdrive configuration.
- Select the Metrics tab.
You can optionally select a time window to query. This defaults to the last 24 hours.
Query via the GraphQL API
Section titled “Query via the GraphQL API”You can programmatically query analytics for your Hyperdrive configurations via the GraphQL Analytics API. This API queries the same datasets as the Cloudflare dashboard, and supports GraphQL introspection.
Hyperdrives's GraphQL datasets require an accountTag
filter with your Cloudflare account ID. Hyperdrive exposes the hyperdriveQueriesAdaptiveGroups
dataset.
Write GraphQL queries
Section titled “Write GraphQL queries”Examples of how to explore your Hyperdrive metrics.
Get the number of queries handled via your Hyperdrive config by cache status
Section titled “Get the number of queries handled via your Hyperdrive config by cache status”query HyperdriveQueries($accountTag: string!, $configId: string!, $datetimeStart: Time!, $datetimeEnd: Time!) { viewer { accounts(filter: {accountTag: $accountTag}) { hyperdriveQueriesAdaptiveGroups( limit: 10000 filter: { configId: $configId datetime_geq: $datetimeStart datetime_leq: $datetimeEnd } ) { count dimensions { cacheStatus } } } }}
Get the average query and connection latency for queries handled via your Hyperdrive config within a range of time, excluding queries that failed due to an error
Section titled “Get the average query and connection latency for queries handled via your Hyperdrive config within a range of time, excluding queries that failed due to an error”query AverageHyperdriveLatencies($accountTag: string!, $configId: string!, $datetimeStart: Time!, $datetimeEnd: Time!) { viewer { accounts(filter: {accountTag: $accountTag}) { hyperdriveQueriesAdaptiveGroups( limit: 10000 filter: { configId: $configId eventStatus: "complete" datetime_geq: $datetimeStart datetime_leq: $datetimeEnd } ) { avg { connectionLatency queryLatency } } } }}
Get the total amount of query and result bytes flowing through your Hyperdrive config
Section titled “Get the total amount of query and result bytes flowing through your Hyperdrive config”query HyperdriveQueryAndResultBytesForSuccessfulQueries($accountTag: string!, $configId: string!, $datetimeStart: Date!, $datetimeEnd: Date!) { viewer { accounts(filter: {accountTag: $accountTag}) { hyperdriveQueriesAdaptiveGroups( limit: 10000 filter: { configId: $configId datetime_geq: $datetimeStart datetime_leq: $datetimeEnd } ) { sum { queryBytes resultBytes } } } }}
Was this helpful?
- Resources
- API
- New to Cloudflare?
- Products
- Sponsorships
- Open Source
- Support
- Help Center
- System Status
- Compliance
- GDPR
- Company
- cloudflare.com
- Our team
- Careers
- 2025 Cloudflare, Inc.
- Privacy Policy
- Terms of Use
- Report Security Issues
- Trademark