Launch GraphOS Studio

Apollo Router instruments

Standard metric instruments for the router's request lifecycle

Standard metric instruments

The provides a set of non-configurable metric instruments that expose detailed information about the Router's request lifecycle.

These instruments can be consumed by configuring a



  • apollo_router_http_request_duration_seconds_bucket - HTTP request duration
  • apollo_router_http_request_duration_seconds_bucket - HTTP request duration, attributes:
    • subgraph: (Optional) The subgraph being queried
  • apollo_router_http_requests_total - Total number of HTTP requests by HTTP status
  • apollo_router_timeout - Number of triggered timeouts
  • apollo_router_http_request_retry_total - Number of subgraph requests retried, attributes:
    • subgraph: The subgraph being queried
    • status : If the retry was aborted (aborted)


  • apollo_router_graphql_error - counts errors in responses, attributes:
    • code: error code


  • apollo_router_session_count_total - Number of currently connected clients
  • apollo_router_session_count_active - Number of in-flight GraphQL requests


  • apollo_router_cache_size — Number of entries in the cache
  • apollo_router_cache_hit_count - Number of cache hits
  • apollo_router_cache_miss_count - Number of cache misses
  • apollo_router_cache_hit_time - Time to hit the cache in seconds
  • apollo_router_cache_miss_time - Time to miss the cache in seconds

All cache metrics listed above have the following attributes:

  • kind: the cache being queried (apq, query planner, introspection)
  • storage: The backend storage of the cache (memory, redis)


  • apollo_router_operations_coprocessor_total - Total with coprocessors enabled.
  • apollo_router_operations_coprocessor.duration - Time spent waiting for the coprocessor to answer, in seconds.

The coprocessor operations metric has the following attributes:

  • coprocessor.stage: string (RouterRequest, RouterResponse, SubgraphRequest, SubgraphResponse)
  • coprocessor.succeeded: bool


  • apollo_router_processing_time - Time spent processing a request (outside of waiting for external or subgraph requests) in seconds.
  • apollo_router_query_planning_time - Time spent planning queries in seconds.
  • apollo_router_query_planning_warmup_duration - Time spent planning queries in seconds.
  • apollo_router_schema_load_duration - Time spent loading the schema in seconds.
  • apollo_router_uplink_fetch_duration_seconds_bucket - Uplink request duration, attributes:

  • url: The Uplink URL that was polled

  • query: The that the router sent to Uplink (SupergraphSdl or License)

  • kind: (new, unchanged, http_error, uplink_error)

  • code: The error code depending on type (if an error occurred)

  • error: The error message (if an error occurred)

  • apollo_router_uplink_fetch_count_total

    • status: (success, failure)
    • query: The query that the router sent to Uplink (SupergraphSdl or License)


The initial call to Uplink during router startup is not reflected in metrics.


  • apollo_router_opened_subscriptions - Number of different opened (not the number of clients with an opened subscriptions in case it's deduplicated)
  • apollo_router_deduplicated_subscriptions_total - Number of subscriptions that has been deduplicated
  • apollo_router_skipped_event_count - Number of events that has been skipped because too many events have been received from the subgraph but not yet sent to the client.


  • apollo.router.operations.batching - A counter of the number of query batches received by the router.
  • apollo.router.operations.batching.size - A histogram tracking the number of queries contained within a query batch.

GraphOS Studio

  • - The number of reports submitted to by the .
    • report.type: The type of report submitted: "traces" or "metrics"


The following metrics have been deprecated and should not be used.

  • apollo_router_span - Deprecated—use apollo_router_processing_time instead.
Standard attributes
Edit on GitHubEditForumsDiscord

© 2024 Apollo Graph Inc.

Privacy Policy