From cae85339bad0789615e66f8b9b4e6ac48acd7f98 Mon Sep 17 00:00:00 2001 From: Stephen Barlow Date: Mon, 10 Apr 2023 21:23:14 -0500 Subject: [PATCH] Update docs links --- docs/source/api/apollo-server.mdx | 2 +- docs/source/api/plugin/landing-pages.mdx | 4 ++-- docs/source/api/plugin/usage-reporting.mdx | 2 +- docs/source/builtin-plugins.md | 2 +- docs/source/data/fetching-data.mdx | 2 +- docs/source/data/subscriptions.mdx | 2 +- docs/source/deployment/lambda.mdx | 3 +-- docs/source/migration.mdx | 2 +- docs/source/monitoring/metrics.mdx | 4 ++-- docs/source/using-federation/apollo-subgraph-setup.mdx | 3 +-- docs/source/workflow/build-run-queries.mdx | 2 +- 11 files changed, 13 insertions(+), 15 deletions(-) diff --git a/docs/source/api/apollo-server.mdx b/docs/source/api/apollo-server.mdx index 80ee4848edf..7c7ab6520f7 100644 --- a/docs/source/api/apollo-server.mdx +++ b/docs/source/api/apollo-server.mdx @@ -117,7 +117,7 @@ This field is helpful if: -You can use this field to integrate your server with [Apollo Gateway](/federation/api/apollo-gateway/). +You can use this field to integrate your server with [Apollo Gateway](../using-federation/api/apollo-gateway/). diff --git a/docs/source/api/plugin/landing-pages.mdx b/docs/source/api/plugin/landing-pages.mdx index acb94234582..2b587160464 100644 --- a/docs/source/api/plugin/landing-pages.mdx +++ b/docs/source/api/plugin/landing-pages.mdx @@ -61,7 +61,7 @@ In non-production environments, Apollo Server 4's landing page is an embedded ve This landing page is designed for use in local development, where `NODE_ENV` is *not* set to `production`. -[Apollo Sandbox](https://studio.apollographql.com/sandbox) is a special mode of Apollo Studio used for local development, which doesn't require an Apollo account. Sandbox includes the [Apollo Studio Explorer](/graphos/explorer/explorer), a powerful web IDE that enables you to build and run operations against your server (or any other reachable server). +[Apollo Sandbox](https://studio.apollographql.com/sandbox) is a special mode of Apollo Studio used for local development, which doesn't require an Apollo account. Sandbox includes the [Apollo Studio Explorer](/graphos/explorer/), a powerful web IDE that enables you to build and run operations against your server (or any other reachable server). ### Options @@ -323,7 +323,7 @@ The `ApolloServerPluginLandingPageProductionDefault` shows a minimalist landing Apollo Server default landing page -This landing page is designed for use in production. It provides a copyable command-line snippet showing how to run operations with your server. By default, the only visible reference to Apollo is a footer explaining how to customize the page. You can also configure it to add a link to query your graph with the [Apollo Explorer](/graphos/explorer/explorer/). You can choose to embed the Apollo Explorer on your endpoint if you pass the `embed` [option](#embed-options). +This landing page is designed for use in production. It provides a copyable command-line snippet showing how to run operations with your server. By default, the only visible reference to Apollo is a footer explaining how to customize the page. You can also configure it to add a link to query your graph with the [Apollo Explorer](/graphos/explorer/). You can choose to embed the Apollo Explorer on your endpoint if you pass the `embed` [option](#embed-options). ### Options diff --git a/docs/source/api/plugin/usage-reporting.mdx b/docs/source/api/plugin/usage-reporting.mdx index b428b4e43ca..c83a8feeff6 100644 --- a/docs/source/api/plugin/usage-reporting.mdx +++ b/docs/source/api/plugin/usage-reporting.mdx @@ -3,7 +3,7 @@ title: "API Reference: Usage reporting plugin" api_reference: true --- -Apollo Server's built-in usage reporting plugin gathers data on how your clients use the operations and fields in your GraphQL schema. The plugin also handles pushing this usage data to [Apollo Studio](/studio/), as described in [Metrics and logging](../../monitoring/metrics/). +Apollo Server's built-in usage reporting plugin gathers data on how your clients use the operations and fields in your GraphQL schema. The plugin also handles pushing this usage data to [GraphOS](/graphos/), as described in [Metrics and logging](../../monitoring/metrics/). This plugin is designed to be used in an Apollo Gateway or in a monolithic server; it is not designed to be used from a subgraph. In a supergraph running Apollo Federation, the Apollo Gateway or Apollo Router will send usage reports to Apollo's cloud. Subgraphs don't need to also send usage reports to Apollo's cloud; instead, they send it to the Router via [inline traces](./inline-trace/) and the Router combines execution information across all subgraphs and sends summarized reports to the cloud. diff --git a/docs/source/builtin-plugins.md b/docs/source/builtin-plugins.md index 02c1d2927fe..76650f7077e 100644 --- a/docs/source/builtin-plugins.md +++ b/docs/source/builtin-plugins.md @@ -12,7 +12,7 @@ You can also [create custom plugins](./integrations/plugins/). | Name | Description | Location | |------|---------|-------------| -| [Usage reporting](./api/plugin/usage-reporting/) | Gathers helpful operation usage data and reports it to [Apollo Studio](https://www.apollographql.com/docs/studio/) for visualization, alerting, and more. |`@apollo/server/plugin/usageReporting` | +| [Usage reporting](./api/plugin/usage-reporting/) | Gathers helpful operation usage data and reports it to [GraphOS](/graphos/) for visualization, alerting, and more. |`@apollo/server/plugin/usageReporting` | | [Schema reporting](./api/plugin/schema-reporting/) | Automatically reports the server's schema to [Apollo Studio](/studio/) on startup to enable schema history and up-to-date metrics. | `@apollo/server/plugin/schemaReporting` | | [Inline trace](./api/plugin/inline-trace/) | Used primarily by [federated subgraphs](https://www.apollographql.com/docs/federation/) to include operation trace data in responses to the gateway. | `@apollo/server/plugin/inlineTrace` | | [Cache control](./api/plugin/cache-control/) | Calculates caching behavior for operation responses. | `@apollo/server/plugin/cacheControl` | diff --git a/docs/source/data/fetching-data.mdx b/docs/source/data/fetching-data.mdx index 7bd12384eb6..baaf4773d0f 100644 --- a/docs/source/data/fetching-data.mdx +++ b/docs/source/data/fetching-data.mdx @@ -84,7 +84,7 @@ export class ReservationsDataSource { If you want to add batching, deduplication, or caching to your data source class, we recommend using the [DataLoader package](https://github.com/graphql/dataloader). Using a package like DataLoader is particularly helpful for solving the [infamous N+1 query problem](https://shopify.engineering/solving-the-n-1-problem-for-graphql-through-batching). -DataLoader provides a memoization cache, which avoids loading the same object multiple times during a single GraphQL request ([much like one of `RESTDataSource`'s caching layers](./fetching-rest#get-requests-and-responses)). It also combines loads during a single event loop tick into a batched request that fetches multiple objects at once. +DataLoader provides a memoization cache, which avoids loading the same object multiple times during a single GraphQL request ([much like one of `RESTDataSource`'s caching layers](./fetching-rest#get-and-head-requests-and-responses)). It also combines loads during a single event loop tick into a batched request that fetches multiple objects at once. DataLoader instances are per-request, so if you use a DataLoader in your data source, ensure you **create a new instance of that class with every request** : diff --git a/docs/source/data/subscriptions.mdx b/docs/source/data/subscriptions.mdx index 36426dd3f34..ab6dfbc3cf4 100644 --- a/docs/source/data/subscriptions.mdx +++ b/docs/source/data/subscriptions.mdx @@ -610,7 +610,7 @@ If you intend to [switch from `subscriptions-transport-ws` to `graphql-ws`](/apo diff --git a/docs/source/deployment/lambda.mdx b/docs/source/deployment/lambda.mdx index e034ebfc494..bcb05dcac7a 100644 --- a/docs/source/deployment/lambda.mdx +++ b/docs/source/deployment/lambda.mdx @@ -230,7 +230,7 @@ If successful, `serverless` should output something like this: > Monitor all your API routes with Serverless Console: run "serverless --console" ``` -You can now navigate to your endpoints and query your newly hosted server using [Apollo Sandbox](/studio/explorer/sandbox). +You can now navigate to your endpoints and query your newly hosted server using [Apollo Sandbox](/graphos/explorer/sandbox/). #### What does `serverless` do? @@ -538,4 +538,3 @@ exports.graphqlHandler = serverlessExpress({ app }); The setup enables you to customize your HTTP behavior as needed. - diff --git a/docs/source/migration.mdx b/docs/source/migration.mdx index de6b893d424..845fb931d63 100644 --- a/docs/source/migration.mdx +++ b/docs/source/migration.mdx @@ -1003,7 +1003,7 @@ For `ValidationError`, use `ApolloServerErrorCode.GRAPHQL_VALIDATION_FAILED`. Fo ### `__resolveObject` Apollo Server 4 removes the dependency on `@apollographql/apollo-tooling`, additionally removing the `__resolveObject` pseudo-resolver. The `__resolveObject` function was an undocumented predecessor to -the [`__resolveReference`](/federation/api/apollo-subgraph/#__resolvereference) method. While we believe `__resolveObject` is a useful feature, it would work better if implemented directly in `graphql-js` rather than in Apollo Server. +the [`__resolveReference`](./using-federation/api/apollo-subgraph/#__resolvereference) method. While we believe `__resolveObject` is a useful feature, it would work better if implemented directly in `graphql-js` rather than in Apollo Server. ### `requestAgent` option to `ApolloServerPluginUsageReporting` diff --git a/docs/source/monitoring/metrics.mdx b/docs/source/monitoring/metrics.mdx index f1a7753448d..2d0fa73271b 100644 --- a/docs/source/monitoring/metrics.mdx +++ b/docs/source/monitoring/metrics.mdx @@ -9,13 +9,13 @@ Apollo Server integrates seamlessly with [Apollo GraphOS](/graphos/) to help you ## Sending metrics to GraphOS -[Apollo GraphOS](/graphos/) provides an integrated hub for all of your GraphQL performance data, which you can view in Apollo Studio. Studio [aggregates and displays information](/graphos/metrics/usage-reporting/) for your schema, queries, requests, and errors. You can also configure alerts that support [Slack](/graphos/notifications/notification-setup/#slack) and [Datadog](/graphos/metrics/datadog-integration/) integrations. +[Apollo GraphOS](/graphos/) provides an integrated hub for all of your GraphQL performance data, which you can view in Apollo Studio. Studio [aggregates and displays information](/graphos/metrics/) for your schema, queries, requests, and errors. You can also configure alerts that support [Slack](/graphos/metrics/notifications/notification-setup/#slack) and [Datadog](/graphos/metrics/datadog-integration/) integrations. ### Connecting to GraphOS To connect Apollo Server to GraphOS, first [obtain a graph API key](/graphos/api-keys#graph-api-keys). To provide this key to Apollo Server, assign it to the `APOLLO_KEY` environment variable in your server's environment. -Then associate your server instance with a particular graph ID and [graph variant](/graphos/graphs/overview/#variants) by setting the `APOLLO_GRAPH_REF` environment variable. +Then associate your server instance with a particular graph ID and [graph variant](/graphos/graphs/#variants) by setting the `APOLLO_GRAPH_REF` environment variable. You can set environment variable values on the command line as seen below, or with the [`dotenv` npm package](https://www.npmjs.com/package/dotenv) (or similar). diff --git a/docs/source/using-federation/apollo-subgraph-setup.mdx b/docs/source/using-federation/apollo-subgraph-setup.mdx index 662b440e0f8..ef8e56e3191 100644 --- a/docs/source/using-federation/apollo-subgraph-setup.mdx +++ b/docs/source/using-federation/apollo-subgraph-setup.mdx @@ -4,7 +4,7 @@ title: Implementing a subgraph with Apollo Server This article demonstrates how to create a **subgraph** for a federated supergraph using Node.js and Apollo Server. -> To create a subgraph using a different language and/or framework, see the list of [Federation-compatible subgraph implementations](/federation/supported-subgraphs/). Note that not all listed libraries support _all_ Federation features. +> To create a subgraph using a different language and/or framework, see the list of [Federation-compatible subgraph implementations](/federation/building-supergraphs/supported-subgraphs/). Note that not all listed libraries support _all_ Federation features. ## Defining a subgraph @@ -241,4 +241,3 @@ console.log(`🚀 Server ready at ${url}`); ## Custom directives See [Custom directives in subgraphs](../schema/directives/#in-subgraphs). - diff --git a/docs/source/workflow/build-run-queries.mdx b/docs/source/workflow/build-run-queries.mdx index 4acaeeaa5c1..7024e9f05a8 100644 --- a/docs/source/workflow/build-run-queries.mdx +++ b/docs/source/workflow/build-run-queries.mdx @@ -8,7 +8,7 @@ In non-production environments, Apollo Server 4's landing page is an embedded ve > Apollo Server serves a different landing page [in production](#production-vs-non-production). -[Apollo Sandbox](https://studio.apollographql.com/sandbox) is a special mode of Apollo Studio used for local development, which doesn't require an Apollo account. Sandbox includes the [Apollo Studio Explorer](/graphos/explorer/explorer), a powerful web IDE that enables you to build and run operations against your server (or any other reachable server). +[Apollo Sandbox](https://studio.apollographql.com/sandbox) is a special mode of Apollo Studio used for local development, which doesn't require an Apollo account. Sandbox includes the [Apollo Studio Explorer](/graphos/explorer/), a powerful web IDE that enables you to build and run operations against your server (or any other reachable server). ## Production vs. non-production
-[Apollo Studio Explorer](/graphos/explorer/explorer/) +[Apollo Studio Explorer](/graphos/explorer/)