Real-Time Events limits
Check the retention, query and payload bounds of Real-Time Events, the answer a query receives past each one, and the usage included each month.
Real-Time Events bounds three different things: how long a record is kept, how much one query may read and return, and how much usage the account is billed for. This page states each bound, the answer a query receives past it, and the usage that is included before a rate applies.
A default limit and an included amount behave differently. Azion checks a default limit on every query, and the query fails past it. An included amount is a billing quantity, so passing it changes what the account is charged rather than what the query returns.
Event retention
Real-Time Events keeps an event record for 168 hours, which is 7 days. Retention is therefore the outer bound of the period a query can ask for, whichever data source it reads. A custom time range selects a date and time range inside those same 168 hours.
Activity History is the exception. Its data source keeps records for 2 years, and the Real-Time Events GraphQL API queries that full period.
Query limits
One query carries four bounds of its own: the rows it returns, the fields it selects, the size of its payload, and the rate at which the GraphQL API accepts requests. A fifth bound applies inside the log database, on the rows one query reads before it returns anything.
Default limits
Each row names what is bounded, the bound, and what a query past it receives. For the body an error response carries, refer to GraphQL API error responses.
| Scope | Limit | Past the limit |
|---|---|---|
| Rows returned per query | 10,000 rows | The GraphQL API returns an error response that names the limit. |
| Selected fields per query | 37 fields | The GraphQL API returns an error response that names the limit. |
| GraphQL API requests | 120 per minute | 429 |
| Rows read inside the log database | 10 billion rows | The query fails with A query limit was exceeded. Try to refine your filter parameters or query a smaller period for a more precise search. |
The row and field bounds belong to the GraphQL API itself and apply to every dataset it serves. The limit field in a query sets the row count, up to 10,000. For both values, refer to GraphQL API limits.
Two further values apply: a query payload reaches 5 GB, and a record becomes available to a query up to 30 seconds after the event that produced it.
The 10-billion row bound is enforced by the log database rather than by the GraphQL API. It counts the rows a query reads, not the rows the query returns. A query over a broad time range with no other filter can reach it, and a search across the full 7 days of retention is the common case. To stay inside the bound, narrow the time range or add a filter on a host, an IP address, an HTTP status code, or another parameter of the search.
Azion can raise these default limits on request, based on your plan. To request an increase, contact the technical support team.
Included usage
Real-Time Events is billed on two metrics, Storage and Data Scan. Both are measured per GB per month, and each one includes a first amount before a rate applies.
| Metric | Included |
|---|---|
| Storage | First 1 GB per month |
| Data Scan | First 1 GB per month |
These amounts are billing quantities rather than bounds applied to a query. A query that passes one of them returns its records as usual, and the usage past the included amount is charged.
For the rate that applies past an included amount, refer to Pricing.