Skip to content

Commit

Permalink
docs: update frontmatter (#5164)
Browse files Browse the repository at this point in the history
Co-authored-by: Edward Huang <edward.huang@apollographql.com>
  • Loading branch information
2 people authored and Geal committed Jun 3, 2024
1 parent 405acf4 commit 0840e53
Show file tree
Hide file tree
Showing 56 changed files with 162 additions and 123 deletions.
4 changes: 2 additions & 2 deletions docs/shared/register-federated-cli.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ graph LR;
If you haven't yet:

* <a href="https://www.apollographql.com/docs/rover/getting-started/" target="_blank">Install the Rover CLI.</a>
* <a href="https://www.apollographql.com/docs/rover/configuring/" target="_blank">Authenticate Rover</a> with Apollo Studio.
* <a href="https://www.apollographql.com/docs/rover/configuring/" target="_blank">Authenticate Rover</a> with GraphOS Studio.

Then, **do the following for each of your subgraphs**:

Expand All @@ -38,4 +38,4 @@ Then, **do the following for each of your subgraphs**:

As you register your subgraph schemas, the schema registry attempts to **compose** their latest versions into a single **supergraph schema**. Whenever composition succeeds, the Apollo Router can fetch the latest supergraph schema from the registry.

You can also manually fetch your latest supergraph schema with the `rover supergraph fetch` command, or retrieve it from your graph's **Schema > SDL** tab in Apollo Studio.
You can also manually fetch your latest supergraph schema with the `rover supergraph fetch` command, or retrieve it from your graph's **Schema > SDL** tab in GraphOS Studio.
68 changes: 34 additions & 34 deletions docs/source/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@
"Introduction": "/",
"Quickstart": "/quickstart",
"Moving from @apollo/gateway": "/migrating-from-gateway",
"Federation version support": "/federation-version-support",
"Enterprise features": [
"Federation Version Support": "/federation-version-support",
"Enterprise Features": [
"/enterprise-features",
[
"enterprise"
Expand All @@ -17,14 +17,14 @@
"Configuring the Router": {
"Overview": "/configuration/overview",
"Caching": {
"In-memory caching": "/configuration/in-memory-caching",
"Distributed caching": [
"In-Memory Caching": "/configuration/in-memory-caching",
"Distributed Caching": [
"/configuration/distributed-caching",
[
"enterprise"
]
],
"Entity caching": [
"Entity Caching": [
"/configuration/entity-caching",
[
"enterprise",
Expand All @@ -35,15 +35,15 @@
"Debugging": {
"Errors": "/errors",
"Telemetry": "/configuration/telemetry/overview",
"Subgraph error inclusion": "/configuration/subgraph-error-inclusion"
"Subgraph Error Inclusion": "/configuration/subgraph-error-inclusion"
},
"Networking": {
"Header propagation": "/configuration/header-propagation",
"Traffic shaping": "/configuration/traffic-shaping"
"Header Propagation": "/configuration/header-propagation",
"Traffic Shaping": "/configuration/traffic-shaping"
},
"Security": {
"CORS": "/configuration/cors",
"CSRF prevention": "/configuration/csrf",
"CSRF Prevention": "/configuration/csrf",
"JWT Authentication": [
"/configuration/authn-jwt",
[
Expand All @@ -57,46 +57,46 @@
]
],
"Subgraph Authentication": "/configuration/authn-subgraph",
"Operation limits": [
"Operation Limits": [
"/configuration/operation-limits",
[
"enterprise"
]
],
"Safelisting with persisted queries": [
"Safelisting with Persisted Queries": [
"/configuration/persisted-queries",
[
"enterprise"
]
],
"Privacy and data collection": "/privacy"
"Privacy and Data Collection": "/privacy"
}
},
"Executing Operations": {
"Build and run queries": "/executing-operations/build-run-queries",
"@defer support": "/executing-operations/defer-support",
"Request format": "/executing-operations/requests",
"Query batching": [
"Build and Run Queries": "/executing-operations/build-run-queries",
"@defer Support": "/executing-operations/defer-support",
"Request Format": "/executing-operations/requests",
"Query Batching": [
"/executing-operations/query-batching",
[
"enterprise"
]
],
"GraphQL Subscriptions": {
"Subscriptions setup": [
"Subscriptions Setup": [
"/executing-operations/subscription-support",
[
"enterprise"
]
],
"Subgraph protocol: HTTP callback": [
"Subgraph Protocol: HTTP Callback": [
"/executing-operations/subscription-callback-protocol",
[
"enterprise",
"preview"
]
],
"Client protocol: HTTP multipart": [
"Client Protocol: HTTP Multipart": [
"/executing-operations/subscription-multipart-protocol",
[
"enterprise"
Expand All @@ -106,13 +106,13 @@
},
"Telemetry and Monitoring": {
"Overview": "/configuration/telemetry/overview",
"GraphOS reporting": "/configuration/telemetry/apollo-telemetry",
"Client awareness": "/managed-federation/client-awareness",
"Log exporters": {
"GraphOS Reporting": "/configuration/telemetry/apollo-telemetry",
"Client Awareness": "/managed-federation/client-awareness",
"Log Exporters": {
"Configuration": "/configuration/telemetry/exporters/logging/overview",
"Stdout": "/configuration/telemetry/exporters/logging/stdout"
},
"Metrics exporters": {
"Metrics Exporters": {
"Configuration": "/configuration/telemetry/exporters/metrics/overview",
"Datadog": "/configuration/telemetry/exporters/metrics/datadog",
"New Relic": "/configuration/telemetry/exporters/metrics/new-relic",
Expand All @@ -133,37 +133,37 @@
"Conditions": "/configuration/telemetry/instrumentation/conditions",
"Spans": "/configuration/telemetry/instrumentation/spans",
"Selectors": "/configuration/telemetry/instrumentation/selectors",
"Standard attributes": "/configuration/telemetry/instrumentation/standard-attributes",
"Standard instruments": "/configuration/telemetry/instrumentation/standard-instruments"
"Standard Attributes": "/configuration/telemetry/instrumentation/standard-attributes",
"Standard Instruments": "/configuration/telemetry/instrumentation/standard-instruments"
}
},
"Containerization": {
"Overview": "/containerization/overview",
"Deploy on Kubernetes": "/containerization/kubernetes",
"Run with Docker": "/containerization/docker",
"Health checks": "/configuration/health-checks"
"Health Checks": "/configuration/health-checks"
},
"Managed Federation": {
"Overview": "https://www.apollographql.com/docs/federation/managed-federation/overview",
"Setup": "https://www.apollographql.com/docs/federation/managed-federation/setup",
"GraphOS Studio features": "https://www.apollographql.com/docs/graphos/graphs/federated-graphs"
"GraphOS Studio Features": "https://www.apollographql.com/docs/graphos/graphs/federated-graphs"
},
"Customizations": {
"Overview": "/customizations/overview",
"Rhai scripts": "/customizations/rhai",
"Rhai API reference": "/customizations/rhai-api",
"External coprocessing": [
"Rhai Scripts": "/customizations/rhai",
"Rhai API Reference": "/customizations/rhai-api",
"External Coprocessing": [
"/customizations/coprocessor",
[
"enterprise"
]
],
"Native Rust plugins": "/customizations/native",
"Custom router binary": "/customizations/custom-binary"
"Native Rust Plugins": "/customizations/native",
"Custom Router Binary": "/customizations/custom-binary"
},
"Subgraph Support": {
"Subgraph-compatible libraries": "https://www.apollographql.com/docs/federation/v2/other-servers/",
"Subgraph specification": "https://www.apollographql.com/docs/federation/v2/federation-spec/"
"Subgraph-Compatible Libraries": "https://www.apollographql.com/docs/federation/v2/other-servers/",
"Subgraph Specification": "https://www.apollographql.com/docs/federation/v2/federation-spec/"
}
}
}
3 changes: 2 additions & 1 deletion docs/source/configuration/authn-jwt.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
title: JWT Authentication in the Apollo Router
description: Restrict access to credentialed users and systems
subtitle: Restrict access to credentialed users and systems
description: Protect sensitive data by enabling JWT authentication in the Apollo Router. Restrict access to credentialed users and systems.
---

<PremiumFeature linkWithAnchor="https://www.apollographql.com/pricing#graphos-router" />
Expand Down
2 changes: 2 additions & 0 deletions docs/source/configuration/authn-subgraph.mdx
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
---
title: Subgraph Authentication in the Apollo Router
subtitle: Implement subgraph authentication using AWS SigV4
description: Secure communication to AWS subgraphs via the Apollo Router using AWS Signature Version 4 (SigV4).
minVersion: 1.27.0
---

Expand Down
3 changes: 2 additions & 1 deletion docs/source/configuration/authorization.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
title: Authorization in the Apollo Router
description: Strengthen service security with a centralized governance layer
subtitle: Strengthen subgraph security with a centralized governance layer
description: Enforce authorization in the Apollo Router with the @requireScopes, @authenticated, and @policy directives.
---

<PremiumFeature linkWithAnchor="https://www.apollographql.com/pricing#graphos-router" />
Expand Down
12 changes: 6 additions & 6 deletions docs/source/configuration/cors.mdx
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: Configuring CORS in the Apollo Router
sidebar_title: CORS
description: Control browser access to your router
subtitle: Control browser access to your router
description: Manage browser access to your Apollo Router with CORS configuration options, including origin whitelisting, wildcard origins, and credential passing.
---

<Note>
Expand All @@ -13,7 +13,7 @@ description: Control browser access to your router

</Note>

By default, the Apollo Router enables _only_ Apollo Studio to initiate browser connections to it. If your supergraph serves data to other browser-based applications, you need to do one of the following in the `cors` section of your router's [YAML config file](./overview/#yaml-config-file):
By default, the Apollo Router enables _only_ GraphOS Studio to initiate browser connections to it. If your supergraph serves data to other browser-based applications, you need to do one of the following in the `cors` section of your router's [YAML config file](./overview/#yaml-config-file):

* Add the origins of those web applications to the router's list of allowed `origins`.
* Use this option if there is a known, finite list of web applications that consume your supergraph.
Expand All @@ -36,13 +36,13 @@ cors:

# List of accepted origins
# (Ignored if allow_any_origin is true)
# (Defaults to the Apollo Studio url: `https://studio.apollographql.com`)
# (Defaults to the GraphOS Studio url: `https://studio.apollographql.com`)
#
# An origin is a combination of scheme, hostname and port.
# It does not have any path section, so no trailing slash.
origins:
- https://www.your-app.example.com
- https://studio.apollographql.com # Keep this so Apollo Studio can run queries against your router
- https://studio.apollographql.com # Keep this so GraphOS Studio can run queries against your router
match_origins:
- "^https://([a-z0-9]+[.])*api[.]example[.]com$" # any host that uses https and ends with .api.example.com
```
Expand Down Expand Up @@ -110,7 +110,7 @@ cors:
# An origin is a combination of scheme, hostname and port.
# It does not have any path section, so no trailing slash.
origins:
- https://studio.apollographql.com # Keep this so Apollo Studio can still run queries against your router
- https://studio.apollographql.com # Keep this so GraphOS Studio can still run queries against your router
# Set to true to add the `Access-Control-Allow-Credentials` header
allow_credentials: false
Expand Down
1 change: 0 additions & 1 deletion docs/source/configuration/csrf.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
---
title: Cross-Site Request Forgery (CSRF) Prevention
sidebar_title: CSRF prevention
subtitle: Prevent CSRF attacks in the Apollo Router
description: Prevent cross-site request forgery (CSRF) attacks in the Apollo Router.
minVersion: 0.9.0
Expand Down
4 changes: 2 additions & 2 deletions docs/source/configuration/distributed-caching.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: Distributed caching for the Apollo Router
subtitle: Redis-backed caching for query plans and APQ
title: Distributed Caching for the Apollo Router
subtitle: Configure Redis-backed caching for query plans and APQ
description: Distributed caching for Apollo Router with GraphOS Enterprise. Configure a Redis-backed cache for query plans and automatic persisted queries (APQ).
---

Expand Down
4 changes: 2 additions & 2 deletions docs/source/configuration/entity-caching.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: Subgraph entity caching for the Apollo Router
subtitle: Redis-backed caching for entities
title: Subgraph Entity Caching for the Apollo Router
subtitle: Configure Redis-backed caching for entities
description: Subgraph entity caching for Apollo Router with GraphOS Enterprise. Cache and reuse individual entities across queries.
minVersion: 1.40.0
---
Expand Down
5 changes: 3 additions & 2 deletions docs/source/configuration/header-propagation.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
title: Sending HTTP headers to subgraphs
description: Configure which headers the Apollo Router sends to which subgraphs
title: Header Propogation
subtitle: Configure HTTP header propagation to subgraphs
description: Configure which HTTP headers the Apollo Router sends to which subgraphs. Define per-subgraph header rules, along with rules that apply to all subgraphs.
---

You can configure which HTTP headers the Apollo Router includes in its requests to each of your subgraphs. You can define per-subgraph header rules, along with rules that apply to _all_ subgraphs.
Expand Down
5 changes: 3 additions & 2 deletions docs/source/configuration/health-checks.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
title: Health checks in the Apollo Router
description: Determining the router's status
title: Health Checks in the Apollo Router
subtitle: Determining the router's status
description: Learn how to run health checks to determine whether an Apollo Router is available and ready to start serving traffic.
---

Health checks are often used by load balancers to determine whether a server is available and ready to start serving traffic.
Expand Down
5 changes: 4 additions & 1 deletion docs/source/configuration/in-memory-caching.mdx
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
---
title: In-memory caching in the Apollo Router
title: In-Memory Caching in the Apollo Router
subtitle: Configure caching for query plans and automatic persisted queries
description: Configure the Apollo Router's in-memory caching for improved performance. Configure query plans and automatic persisted queries caching.
---

The Apollo Router uses an in-memory LRU cache to store the following data:
Expand All @@ -17,6 +19,7 @@ If you have a GraphOS Enterprise plan, you can also configure a Redis-backed _di
</Tip>

## Performance improvements vs stability

The Router is a highly scalable and low-latency runtime. Even with all caching **disabled**, the time to process operations and query plans will be very minimal (nanoseconds to milliseconds) when compared to the overall supergraph request, except in the edge cases of extremely large operations and supergraphs. Caching offers stability to those running a large graph so that your overhead for given operations stays consistent, not that it dramatically improves. If you would like to validate the performance wins of operation caching, check out the [traces and metrics in the Router](/router/configuration/telemetry/instrumentation/standard-instruments#performance) to take measurements before and after. In extremely large edge cases though, we have seen the cache save 2-10x time to create the query plan, which is still a small part of the overall request.

## Caching query plans
Expand Down
5 changes: 3 additions & 2 deletions docs/source/configuration/operation-limits.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
title: Enforcing operation limits in the Apollo Router
description: With GraphOS Enterprise
title: Enforcing Operation Limits in the Apollo Router
subtitle: Set constraints on depth, height, aliases, and root fields
description: Ensure your GraphQL operations are secure with Apollo Router's operation limits. Set constraints on depth, height, aliases, and root fields.
---

<EnterpriseFeature linkWithAnchor="https://www.apollographql.com/pricing#graphos-router" />
Expand Down
3 changes: 2 additions & 1 deletion docs/source/configuration/overview.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
title: Configuring the Apollo Router
description: Command arguments and YAML config
subtitle: With environment variables, command-line options, and YAML file configuration
description: Learn how to configure the Apollo Router with environment variables, command-line options and commands, and YAML configuration files.
---

import RedisTLS from '../../shared/redis-tls.mdx'
Expand Down
5 changes: 3 additions & 2 deletions docs/source/configuration/persisted-queries.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
title: Safelisting with persisted queries
description: Secure your graph while minimizing request latency
title: Safelisting with Persisted Queries
subtitle: Secure your graph while minimizing request latency
description: Secure your federated GraphQL API by creating an allowlist of trusted operations. Minimize request latency and enhance performance.
minVersion: 1.25.0
---

Expand Down
4 changes: 3 additions & 1 deletion docs/source/configuration/subgraph-error-inclusion.mdx
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
---
title: Subgraph error inclusion
title: Subgraph Error Inclusion
subtitle: Configure the router to propagate subgraph errors to clients
description: Configure the Apollo Router to propagate subgraph errors to clients for all subgraphs or on a per-subgraph basis.
---

By default, the Apollo Router redacts the details of subgraph errors in its responses to clients. The router instead returns a default error with the following message:
Expand Down
8 changes: 4 additions & 4 deletions docs/source/configuration/telemetry/apollo-telemetry.mdx
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: GraphOS reporting
subtitle: Send Apollo Router operation metrics to GraphOS
description: Report operation usage metrics from the Apollo Router to GraphOS to enable schema checks and metrics visualization in GraphOS Studio
description: Report GraphQL operation usage metrics from the Apollo Router to GraphOS to enable schema checks and metrics visualization in GraphOS Studio.
---

The Apollo Router can report operation usage metrics to [GraphOS](/graphos/) that you can then visualize in GraphOS Studio. These metrics also enable powerful GraphOS features like [schema checks](/graphos/delivery/schema-checks/).
Expand Down Expand Up @@ -280,17 +280,17 @@ An array of names for the variables that the router _will not_ report to GraphOS
```yaml title="router.yaml"
telemetry:
apollo:
# The percentage of requests will include HTTP request and response headers in traces sent to Apollo Studio.
# The percentage of requests will include HTTP request and response headers in traces sent to GraphOS Studio.
# This is expensive and should be left at a low value.
# This cannot be higher than tracing->common->sampler
field_level_instrumentation_sampler: 0.01 # (default)
# Include HTTP request and response headers in traces sent to Apollo Studio
# Include HTTP request and response headers in traces sent to GraphOS Studio
send_headers: # other possible values are all, only (with an array), except (with an array), none (by default)
except: # Send all headers except referer
- referer
# Include variable values in Apollo in traces sent to Apollo Studio
# Include variable values in Apollo in traces sent to GraphOS Studio
send_variable_values: # other possible values are all, only (with an array), except (with an array), none (by default)
except: # Send all variable values except for variable named first
- first
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: Datadog exporter (via OTLP)
subtitle: Configure the Datadog exporter for metrics
description: Configure the Datadog exporter for metrics via OpenTelemetry Protocol (OTLP) in the Apollo Router
description: Configure the Datadog exporter for metrics via OpenTelemetry Protocol (OTLP) in the Apollo Router.
---

Enable and configure the [OTLP exporter](./otlp) for metrics in the Apollo Router for use with [Datadog](https://www.datadoghq.com/).
Expand Down
Loading

0 comments on commit 0840e53

Please sign in to comment.