Docs
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 metrics exporter.

HTTP

  • apollo_router_http_request_duration_seconds_bucket - HTTP request duration
  • apollo_router_http_request_duration_seconds_bucket - HTTP request duration, attributes:
    • subgraph: (Optional) The 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 requests retried, attributes:
    • subgraph: The being queried
    • status : If the retry was aborted (aborted)

Session

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

Cache

  • 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)

Coprocessor

  • 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 metric has the following attributes:

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

Performance

  • apollo_router_processing_time - Time spent processing a request (outside of waiting for external or 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 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 that the sent to Uplink (SupergraphSdl or License)

NOTE

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

Subscriptions

  • 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 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 but not yet sent to the client.

Batching

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

GraphOS Studio

  • apollo.router.telemetry.studio.reports - The number of reports submitted to by the .
    • report.type: The type of report submitted: "traces" or "metrics"
Previous
Standard attributes
Next
Overview
Edit on GitHubEditForumsDiscord

© 2024 Apollo Graph Inc.

Privacy Policy

Company