Subgraph Error Inclusion

Configure the router to propagate subgraph errors to clients


By default, a GraphOS Router or Apollo Router Core redacts the details of subgraph errors in responses to clients. The router instead returns a default error with the following message:

Text
1Subgraph errors redacted

This redaction prevents potential leaks of sensitive information to the client. Using the include_subgraph_errors plugin, you can configure the router to propagate subgraph errors to clients instead. You can do this for all subgraphs, or on a per-subgraph basis.

Configuration

To configure subgraph error inclusion, add the include_subgraph_errors plugin to your YAML config file, like so:

YAML
router.yaml
1include_subgraph_errors:
2  all: true # Propagate errors from all subgraphs
3  subgraphs:
4    products: false # Do not propagate errors from the products subgraph

Any configuration under the subgraphs key takes precedence over configuration under the all key. In the example above, subgraph errors are included from all subgraphs except the products subgraph.

Sending errors to GraphOS

To report the subgraph errors to GraphOS that is a separate configuration that is not affected by client subgraph error inclusion, see the GraphOS reporting docs.

Logging GraphQL request errors

To log the GraphQL error responses (i.e. messages returned in the GraphQL errors array) from the router, see the logging configuration documentation.

Feedback

Edit on GitHub

Forums