Real-time analytics

IMPORTANT: Unlike other Fastly APIs, the base URL for real-time analytics is https://rt.fastly.com.

The real-time analytics API offers a standardized set of data about traffic received by a specified service in one-second time periods up to the last complete second.

Data model

AggregateDelayintegerHow long the system will wait before aggregating messages for each second. The most recent data returned will have happened at the moment of the request, minus the aggregation delay.
DataarrayA list of records, each representing one second of time.
TimestampintegerValue to use for subsequent requests.

Record data model

A list of records, each representing one second of time. The Data property provides access to measurement data for that time period, grouped in various ways.

aggregatedobjectAggregates measurements across all Fastly data centers.
datacenterobjectGroups measurements by POP. See the POPs API for details of POP identifiers.
recordedintegerThe Unix timestamp at which this record's data was generated.

Measurements data model

Statistics that have occurred since the last request.

attack_blocked_req_body_bytesintegerTotal body bytes received from requests that triggered a WAF rule that was blocked.
attack_blocked_req_header_bytesintegerTotal header bytes received from requests that triggered a WAF rule that was blocked.
attack_logged_req_body_bytesintegerTotal body bytes received from requests that triggered a WAF rule that was logged.
attack_logged_req_header_bytesintegerTotal header bytes received from requests that triggered a WAF rule that was logged.
attack_passed_req_body_bytesintegerTotal body bytes received from requests that triggered a WAF rule that was passed.
attack_passed_req_header_bytesintegerTotal header bytes received from requests that triggered a WAF rule that was passed.
attack_req_body_bytesintegerTotal body bytes received from requests that triggered a WAF rule.
attack_req_header_bytesintegerTotal header bytes received from requests that triggered a WAF rule.
attack_resp_synth_bytesintegerTotal bytes delivered for requests that triggered a WAF rule and returned a synthetic response.
bereq_body_bytesintegerTotal body bytes sent to origin.
bereq_header_bytesintegerTotal header bytes sent to origin.
body_sizeintegerTotal body bytes delivered (alias for resp_body_bytes).
compute_bereq_body_bytesintegerTotal body bytes sent to backends (origins) by Compute@Edge.
compute_bereq_errorsintegerNumber of backend request errors, including timeouts.
compute_bereq_header_bytesintegerTotal header bytes sent to backends (origins) by Compute@Edge.
compute_bereqsintegerNumber of backend requests started.
compute_beresp_body_bytesintegerTotal body bytes received from backends (origins) by Compute@Edge.
compute_beresp_header_bytesintegerTotal header bytes received from backends (origins) by Compute@Edge.
compute_execution_time_msnumberThe amount of active CPU time used to process your requests (in milliseconds).
compute_globals_limit_exceededintegerNumber of times a guest exceeded its globals limit.
compute_guest_errorsintegerNumber of times a service experienced a guest code error.
compute_heap_limit_exceededintegerNumber of times a guest exceeded its heap limit.
compute_ram_usedintegerThe amount of RAM used for your service by Fastly (in bytes).
compute_req_body_bytesintegerTotal body bytes received by Compute@Edge.
compute_req_header_bytesintegerTotal header bytes received by Compute@Edge.
compute_request_time_msnumberThe total, actual amount of time used to process your requests, including active CPU time (in milliseconds).
compute_requestsintegerThe total number of requests that were received for your service by Fastly.
compute_resource_limit_exceededintegerNumber of times a guest exceeded its resource limit, includes heap, stack, globals, and code execution timeout.
compute_resp_body_bytesintegerTotal body bytes sent from Compute@Edge to end user.
compute_resp_header_bytesintegerTotal header bytes sent from Compute@Edge to end user.
compute_resp_status_1xxintegerNumber of "Informational" category status codes delivered by Compute@Edge.
compute_resp_status_2xxintegerNumber of "Success" category status codes delivered by Compute@Edge.
compute_resp_status_3xxintegerNumber of "Redirection" category status codes delivered by Compute@Edge.
compute_resp_status_4xxintegerNumber of "Client Error" category status codes delivered by Compute@Edge.
compute_resp_status_5xxintegerNumber of "Server Error" category status codes delivered by Compute@Edge.
compute_runtime_errorsintegerNumber of times a service experienced a guest runtime error.
compute_stack_limit_exceededintegerNumber of times a guest exceeded its stack limit.
deliver_sub_countintegerNumber of executions of the vcl_deliver Varnish subroutine.
deliver_sub_timenumberTime spent inside the vcl_deliver Varnish subroutine (in nanoseconds).
edge_hit_requestsintegerNumber of requests sent by end users to Fastly that resulted in a hit at the edge.
edge_miss_requestsintegerNumber of requests sent by end users to Fastly that resulted in a miss at the edge.
edge_requestsintegerNumber of requests sent by end users to Fastly.
edge_resp_body_bytesintegerTotal body bytes delivered from Fastly to the end user.
edge_resp_header_bytesintegerTotal header bytes delivered from Fastly to the end user.
error_sub_countintegerNumber of executions of the vcl_error Varnish subroutine.
error_sub_timenumberTime spent inside the vcl_error Varnish subroutine (in nanoseconds).
errorsintegerNumber of cache errors.
fetch_sub_countintegerNumber of executions of the vcl_fetch Varnish subroutine.
fetch_sub_timenumberTime spent inside the vcl_fetch Varnish subroutine (in nanoseconds).
hash_sub_countintegerNumber of executions of the vcl_hash Varnish subroutine.
hash_sub_timenumberTime spent inside the vcl_hash Varnish subroutine (in nanoseconds).
header_sizeintegerTotal header bytes delivered (alias for resp_header_bytes).
hit_resp_body_bytesintegerTotal body bytes delivered for cache hits.
hit_sub_countintegerNumber of executions of the vcl_hit Varnish subroutine.
hit_sub_timenumberTime spent inside the vcl_hit Varnish subroutine (in nanoseconds).
hitsintegerNumber of cache hits.
hits_timenumberTotal amount of time spent processing cache hits (in seconds).
http2integerNumber of requests received over HTTP/2.
http3integerNumber of requests received over HTTP/3.
imgoptointegerNumber of responses that came from the Fastly Image Optimizer service. If the service receives 10 requests for an image, this stat will be 10 regardless of how many times the image was transformed.
imgopto_resp_body_bytesintegerTotal body bytes delivered from the Fastly Image Optimizer service, including shield traffic.
imgopto_resp_header_bytesintegerTotal header bytes delivered from the Fastly Image Optimizer service, including shield traffic.
imgopto_shieldintegerNumber of responses that came from the Fastly Image Optimizer service via a shield.
imgopto_shield_resp_body_bytesintegerTotal body bytes delivered via a shield from the Fastly Image Optimizer service.
imgopto_shield_resp_header_bytesintegerTotal header bytes delivered via a shield from the Fastly Image Optimizer service.
imgopto_transformsintegerNumber of transforms performed by the Fastly Image Optimizer service.
imgvideonumberNumber of video responses that came from the Fastly Image Optimizer service.
imgvideo_framesnumberNumber of video frames that came from the Fastly Image Optimizer service. A video frame is an individual image within a sequence of video.
imgvideo_resp_body_bytesnumberTotal body bytes of video delivered from the Fastly Image Optimizer service.
imgvideo_resp_header_bytesnumberTotal header bytes of video delivered from the Fastly Image Optimizer service.
imgvideo_shieldnumberNumber of video responses delivered via a shield that came from the Fastly Image Optimizer service.
imgvideo_shield_framesnumberNumber of video frames delivered via a shield that came from the Fastly Image Optimizer service. A video frame is an individual image within a sequence of video.
imgvideo_shield_resp_body_bytesnumberTotal body bytes of video delivered via a shield from the Fastly Image Optimizer service.
imgvideo_shield_resp_header_bytesnumberTotal header bytes of video delivered via a shield from the Fastly Image Optimizer service.
ipv6integerNumber of requests that were received over IPv6.
logintegerNumber of log lines sent.
log_bytesintegerTotal log bytes sent.
loggingintegerNumber of log lines sent (alias for log).
missintegerNumber of cache misses.
miss_histogramobjectA histogram. Each key represents the upper bound of a span of 10 milliseconds and the values represent the number of requests to origin during that 10ms period. Any origin request that takes more than 60 seconds to return will be in the 60000 bucket.
miss_resp_body_bytesintegerTotal body bytes delivered for cache misses.
miss_sub_countintegerNumber of executions of the vcl_miss Varnish subroutine.
miss_sub_timenumberTime spent inside the vcl_miss Varnish subroutine (in nanoseconds).
miss_timenumberTotal amount of time spent processing cache misses (in seconds).
object_size_100kintegerNumber of objects served that were between 10KB and 100KB in size.
object_size_100mintegerNumber of objects served that were between 10MB and 100MB in size.
object_size_10kintegerNumber of objects served that were between 1KB and 10KB in size.
object_size_10mintegerNumber of objects served that were between 1MB and 10MB in size.
object_size_1gintegerNumber of objects served that were between 100MB and 1GB in size.
object_size_1kintegerNumber of objects served that were under 1KB in size.
object_size_1mintegerNumber of objects served that were between 100KB and 1MB in size.
object_size_otherintegerNumber of objects served that were larger than 1GB in size.
origin_cache_fetchesintegerThe total number of completed requests made to backends (origins) that returned cacheable content.
origin_fetch_body_bytesintegerTotal request body bytes sent to origin.
origin_fetch_header_bytesintegerTotal request header bytes sent to origin.
origin_fetch_resp_body_bytesintegerTotal body bytes received from origin.
origin_fetch_resp_header_bytesintegerTotal header bytes received from origin.
origin_fetchesintegerNumber of requests sent to origin.
origin_revalidationsintegerNumber of responses received from origin with a 304 status code in response to an If-Modified-Since or If-None-Match request. Under regular scenarios, a revalidation will imply a cache hit. However, if using Fastly Image Optimizer or segmented caching this may result in a cache miss.
otfpintegerNumber of responses that came from the Fastly On-the-Fly Packaging service for video-on-demand.
otfp_deliver_timenumberTotal amount of time spent delivering a response from the Fastly On-the-Fly Packaging service for video-on-demand (in seconds).
otfp_manifestsintegerNumber of responses that were manifest files from the Fastly On-the-Fly Packaging service for video-on-demand.
otfp_resp_body_bytesintegerTotal body bytes delivered from the Fastly On-the-Fly Packaging service for video-on-demand.
otfp_resp_header_bytesintegerTotal header bytes delivered from the Fastly On-the-Fly Packaging service for video-on-demand.
otfp_shieldintegerNumber of responses that came from the Fastly On-the-Fly Packaging service for video-on-demand via a shield.
otfp_shield_resp_body_bytesintegerTotal body bytes delivered via a shield for the Fastly On-the-Fly Packaging service for video-on-demand.
otfp_shield_resp_header_bytesintegerTotal header bytes delivered via a shield for the Fastly On-the-Fly Packaging service for video-on-demand.
otfp_shield_timenumberTotal amount of time spent delivering a response via a shield from the Fastly On-the-Fly Packaging service for video-on-demand (in seconds).
passintegerNumber of requests that passed through the CDN without being cached.
pass_resp_body_bytesintegerTotal body bytes delivered for cache passes.
pass_sub_countintegerNumber of executions of the vcl_pass Varnish subroutine.
pass_sub_timenumberTime spent inside the vcl_pass Varnish subroutine (in nanoseconds).
pass_timenumberTotal amount of time spent processing cache passes (in seconds).
pciintegerNumber of responses with the PCI flag turned on.
pipe_sub_countintegerNumber of executions of the vcl_pipe Varnish subroutine.
pipe_sub_timenumberTime spent inside the vcl_pipe Varnish subroutine (in nanoseconds).
predeliver_sub_countintegerNumber of executions of the vcl_predeliver Varnish subroutine.
predeliver_sub_timenumberTime spent inside the vcl_predeliver Varnish subroutine (in nanoseconds).
prehash_sub_countintegerNumber of executions of the vcl_prehash Varnish subroutine.
prehash_sub_timenumberTime spent inside the vcl_prehash Varnish subroutine (in nanoseconds).
recv_sub_countintegerNumber of executions of the vcl_recv Varnish subroutine.
recv_sub_timenumberTime spent inside the vcl_recv Varnish subroutine (in nanoseconds).
req_body_bytesintegerTotal body bytes received.
req_header_bytesintegerTotal header bytes received.
requestsintegerNumber of requests processed.
resp_body_bytesintegerTotal body bytes delivered (edge_resp_body_bytes + shield_resp_body_bytes).
resp_header_bytesintegerTotal header bytes delivered (edge_resp_header_bytes + shield_resp_header_bytes).
restartsintegerNumber of restarts performed.
segblock_origin_fetchesintegerNumber of Range requests to origin for segments of resources when using segmented caching.
segblock_shield_fetchesintegerNumber of Range requests to a shield for segments of resources when using segmented caching.
shieldintegerNumber of requests from edge to the shield POP.
shield_cache_fetchesintegerThe total number of completed requests made to shields that returned cacheable content.
shield_fetch_body_bytesintegerTotal request body bytes sent to a shield.
shield_fetch_header_bytesintegerTotal request header bytes sent to a shield.
shield_fetch_resp_body_bytesintegerTotal response body bytes sent from a shield to the edge.
shield_fetch_resp_header_bytesintegerTotal response header bytes sent from a shield to the edge.
shield_fetchesintegerNumber of requests made from one Fastly data center to another, as part of shielding.
shield_resp_body_bytesintegerTotal body bytes delivered via a shield.
shield_resp_header_bytesintegerTotal header bytes delivered via a shield.
shield_revalidationsintegerNumber of responses received from origin with a 304 status code, in response to an If-Modified-Since or If-None-Match request to a shield. Under regular scenarios, a revalidation will imply a cache hit. However, if using segmented caching this may result in a cache miss.
status_1xxintegerNumber of "Informational" category status codes delivered.
status_200integerNumber of responses sent with status code 200 (Success).
status_204integerNumber of responses sent with status code 204 (No Content).
status_206integerNumber of responses sent with status code 206 (Partial Content).
status_2xxintegerNumber of "Success" status codes delivered.
status_301integerNumber of responses sent with status code 301 (Moved Permanently).
status_302integerNumber of responses sent with status code 302 (Found).
status_304integerNumber of responses sent with status code 304 (Not Modified).
status_3xxintegerNumber of "Redirection" codes delivered.
status_400integerNumber of responses sent with status code 400 (Bad Request).
status_401integerNumber of responses sent with status code 401 (Unauthorized).
status_403integerNumber of responses sent with status code 403 (Forbidden).
status_404integerNumber of responses sent with status code 404 (Not Found).
status_416integerNumber of responses sent with status code 416 (Range Not Satisfiable).
status_429integerNumber of responses sent with status code 429 (Too Many Requests).
status_4xxintegerNumber of "Client Error" codes delivered.
status_500integerNumber of responses sent with status code 500 (Internal Server Error).
status_501integerNumber of responses sent with status code 501 (Not Implemented).
status_502integerNumber of responses sent with status code 502 (Bad Gateway).
status_503integerNumber of responses sent with status code 503 (Service Unavailable).
status_504integerNumber of responses sent with status code 504 (Gateway Timeout).
status_505integerNumber of responses sent with status code 505 (HTTP Version Not Supported).
status_5xxintegerNumber of "Server Error" codes delivered.
synthintegerNumber of requests that returned a synthetic response (i.e., response objects created with the synthetic VCL statement).
tlsintegerNumber of requests that were received over TLS.
tls_v10integerNumber of requests received over TLS 1.0.
tls_v11integerNumber of requests received over TLS 1.1.
tls_v12integerNumber of requests received over TLS 1.2.
tls_v13integerNumber of requests received over TLS 1.3.
uncacheableintegerNumber of requests that were designated uncachable.
videointegerNumber of responses with the video segment or video manifest MIME type (i.e., application/x-mpegurl, application/vnd.apple.mpegurl, application/f4m, application/dash+xml, application/vnd.ms-sstr+xml, ideo/mp2t, audio/aac, video/f4f, video/x-flv, video/mp4, audio/mp4).
waf_blockedintegerNumber of requests that triggered a WAF rule and were blocked.
waf_loggedintegerNumber of requests that triggered a WAF rule and were logged.
waf_passedintegerNumber of requests that triggered a WAF rule and were passed.

Endpoints

Get real-time data for the last second

GET/v1/channel/service_id/ts/timestamp_in_seconds

Get real-time data for the last 120 seconds

GET/v1/channel/service_id/ts/h

Get a limited number of real-time data entries

GET/v1/channel/service_id/ts/h/limit/max_entries

Rate limiting

The real-time analytics API is rate limited internally. However, it is also cached behind Fastly with an expiration time of 1s. Under normal use there should be no reason for customers to hit that rate limit.