Update and restructure AI, Caching, Messaging, and Observability integration docs#444
Conversation
Co-authored-by: alistairmatthews <41286777+alistairmatthews@users.noreply.github.com>
Co-authored-by: alistairmatthews <41286777+alistairmatthews@users.noreply.github.com>
Co-authored-by: alistairmatthews <41286777+alistairmatthews@users.noreply.github.com>
Split Redis Distributed Cache and Redis Output Cache into subfolders with separate get-started, host, and client files following the established pattern. - Created redis-distributed/ and redis-output/ subfolders - Split each into three files: get-started, host, and client - Updated sidebar configuration with collapsed structure - Updated integration-docs.json href entries - Deleted original single-file integrations Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Split Valkey and Garnet into subfolders with separate get-started, host, and client files following the established pattern. - Created valkey/ and garnet/ subfolders - Split each into three files: get-started, host, and client - Updated sidebar configuration with collapsed structure - Updated integration-docs.json href entries - Deleted original single-file integrations Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Split Apache Kafka, NATS, and RabbitMQ into subfolders with separate get-started, host, and client files following the established pattern. - Created apache-kafka/, nats/, and rabbitmq/ subfolders - Split each into three files: get-started, host, and client - Updated sidebar configuration with collapsed structure - Updated integration-docs.json href entries - Deleted original single-file integrations Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Split Seq into a subfolder with separate get-started, host, and client files following the established pattern. - Created seq/ subfolder - Split into three files: get-started, host, and client - Updated sidebar configuration with collapsed structure - Updated integration-docs.json href entries - Deleted original single-file integration Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…gration-subfolders
- Add `next: false` to all 11 client integration documents - Convert all relative links (../) to root-relative links (/) in get-started files - Move Connection properties sections from host to client docs for Garnet and OpenAI Co-authored-by: alistairmatthews <41286777+alistairmatthews@users.noreply.github.com>
…egrations Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Update Redis hosting links in whats-new/aspire-9.mdx and azure-cache-redis.mdx to point to redis-host subfolder - Update RabbitMQ client links in whats-new/aspire-9-1.mdx to point to rabbitmq-client subfolder - Update RabbitMQ configuration and observability links in lavinmq.mdx to point to rabbitmq-client subfolder - Convert relative link in rabbitmq-client.mdx to root-relative format Co-authored-by: alistairmatthews <41286777+alistairmatthews@users.noreply.github.com>
- Fix relative links in redis-host.mdx See also section - Fix relative links in redis-client.mdx See also section Co-authored-by: alistairmatthews <41286777+alistairmatthews@users.noreply.github.com>
Add redirects from old single-file integration paths to new get-started pages: - GitHub Models, OpenAI (AI) - Redis, Redis Distributed, Redis Output, Valkey, Garnet (Caching) - Apache Kafka, NATS, RabbitMQ (Messaging) - Seq (Observability) Also update existing RabbitMQ redirect to point to get-started page. Co-authored-by: alistairmatthews <41286777+alistairmatthews@users.noreply.github.com>
…gration-subfolders
…n-subfolders Fix broken links and add redirects after integration restructuring
There was a problem hiding this comment.
Pull request overview
Restructures multiple integration documentation pages into a consistent “Get started / Hosting / Client” layout, and updates site navigation + cross-links so the new structure is discoverable and old URLs continue to resolve.
Changes:
- Split large integration overview docs into separate get-started, hosting reference, and client reference pages for the targeted integrations.
- Update sidebar navigation and integration-to-doc mappings to point to the new get-started entry points.
- Refresh cross-links across “What’s new”, Azure, and deployment docs, and add redirects for restructured routes.
Reviewed changes
Copilot reviewed 54 out of 54 changed files in this pull request and generated 12 comments.
Show a summary per file
| File | Description |
|---|---|
| src/frontend/src/data/integration-docs.json | Updates package-to-doc hrefs to point to new get-started pages. |
| src/frontend/src/content/docs/whats-new/aspire-9.mdx | Updates Redis/Azure Functions links to new doc routes. |
| src/frontend/src/content/docs/whats-new/aspire-9-1.mdx | Updates Azure integration links and RabbitMQ client link to new routes. |
| src/frontend/src/content/docs/whats-new/aspire-13-1.mdx | Updates Azure Functions link to the new get-started route. |
| src/frontend/src/content/docs/integrations/observability/seq/seq-host.mdx | Adds Seq hosting integration reference page. |
| src/frontend/src/content/docs/integrations/observability/seq/seq-get-started.mdx | Adds Seq get-started tutorial page. |
| src/frontend/src/content/docs/integrations/observability/seq/seq-client.mdx | Adds Seq client integration reference page. |
| src/frontend/src/content/docs/integrations/observability/seq.mdx | Removes the old combined Seq integration page. |
| src/frontend/src/content/docs/integrations/messaging/rabbitmq/rabbitmq-host.mdx | Adds RabbitMQ hosting integration reference page. |
| src/frontend/src/content/docs/integrations/messaging/rabbitmq/rabbitmq-get-started.mdx | Adds RabbitMQ get-started tutorial page. |
| src/frontend/src/content/docs/integrations/messaging/rabbitmq/rabbitmq-client.mdx | Adds RabbitMQ client integration reference page. |
| src/frontend/src/content/docs/integrations/messaging/rabbitmq.mdx | Removes the old combined RabbitMQ integration page. |
| src/frontend/src/content/docs/integrations/messaging/nats/nats-host.mdx | Adds NATS hosting integration reference page. |
| src/frontend/src/content/docs/integrations/messaging/nats/nats-get-started.mdx | Adds NATS get-started tutorial page. |
| src/frontend/src/content/docs/integrations/messaging/nats/nats-client.mdx | Refactors prior NATS page into a client-integration reference page. |
| src/frontend/src/content/docs/integrations/messaging/lavinmq.mdx | Updates RabbitMQ doc links to point at new RabbitMQ client sections. |
| src/frontend/src/content/docs/integrations/messaging/apache-kafka/apache-kafka-host.mdx | Adds Apache Kafka hosting integration reference page. |
| src/frontend/src/content/docs/integrations/messaging/apache-kafka/apache-kafka-get-started.mdx | Adds Apache Kafka get-started tutorial page. |
| src/frontend/src/content/docs/integrations/messaging/apache-kafka/apache-kafka-client.mdx | Refactors prior Kafka page into a client-integration reference page and adds connection properties. |
| src/frontend/src/content/docs/integrations/cloud/azure/role-assignments.mdx | Updates Azure integration links to new get-started routes. |
| src/frontend/src/content/docs/integrations/cloud/azure/overview.mdx | Updates Azure integrations/emulators table links to new get-started routes. |
| src/frontend/src/content/docs/integrations/cloud/azure/azure-cache-redis.mdx | Updates Redis hosting integration deep-link to new Redis hosting page. |
| src/frontend/src/content/docs/integrations/cloud/azure/ai-compatibility-matrix.mdx | Updates Azure AI integration links to new get-started routes. |
| src/frontend/src/content/docs/integrations/caching/valkey/valkey-host.mdx | Adds Valkey hosting integration reference page. |
| src/frontend/src/content/docs/integrations/caching/valkey/valkey-get-started.mdx | Adds Valkey get-started tutorial page. |
| src/frontend/src/content/docs/integrations/caching/valkey/valkey-client.mdx | Adds Valkey client integration reference page. |
| src/frontend/src/content/docs/integrations/caching/valkey.mdx | Removes the old combined Valkey integration page. |
| src/frontend/src/content/docs/integrations/caching/redis/redis-host.mdx | Adds Redis hosting integration reference page. |
| src/frontend/src/content/docs/integrations/caching/redis/redis-get-started.mdx | Adds Redis get-started tutorial page. |
| src/frontend/src/content/docs/integrations/caching/redis/redis-client.mdx | Adds Redis client integration reference page. |
| src/frontend/src/content/docs/integrations/caching/redis.mdx | Removes the old combined Redis integration page. |
| src/frontend/src/content/docs/integrations/caching/redis-output/redis-output-host.mdx | Adds Redis Output Caching hosting integration reference page. |
| src/frontend/src/content/docs/integrations/caching/redis-output/redis-output-get-started.mdx | Adds Redis Output Caching get-started tutorial page. |
| src/frontend/src/content/docs/integrations/caching/redis-output/redis-output-client.mdx | Refactors output-caching page into a client-integration reference page. |
| src/frontend/src/content/docs/integrations/caching/redis-extensions.mdx | Adjusts navigation metadata (next: false). |
| src/frontend/src/content/docs/integrations/caching/redis-distributed/redis-distributed-host.mdx | Adds Redis Distributed Caching hosting integration reference page. |
| src/frontend/src/content/docs/integrations/caching/redis-distributed/redis-distributed-get-started.mdx | Adds Redis Distributed Caching get-started tutorial page. |
| src/frontend/src/content/docs/integrations/caching/redis-distributed/redis-distributed-client.mdx | Refactors distributed-caching page into a client-integration reference page. |
| src/frontend/src/content/docs/integrations/caching/garnet/garnet-host.mdx | Adds Garnet hosting integration reference page. |
| src/frontend/src/content/docs/integrations/caching/garnet/garnet-get-started.mdx | Adds Garnet get-started tutorial page. |
| src/frontend/src/content/docs/integrations/caching/garnet/garnet-client.mdx | Adds Garnet client integration reference page. |
| src/frontend/src/content/docs/integrations/caching/garnet.mdx | Removes the old combined Garnet integration page. |
| src/frontend/src/content/docs/integrations/ai/openai/openai-host.mdx | Adds OpenAI hosting integration reference page. |
| src/frontend/src/content/docs/integrations/ai/openai/openai-get-started.mdx | Adds OpenAI get-started tutorial page. |
| src/frontend/src/content/docs/integrations/ai/openai/openai-client.mdx | Adds OpenAI client integration reference page. |
| src/frontend/src/content/docs/integrations/ai/openai.mdx | Removes the old combined OpenAI integration page. |
| src/frontend/src/content/docs/integrations/ai/github-models/github-models-host.mdx | Adds GitHub Models hosting integration reference page. |
| src/frontend/src/content/docs/integrations/ai/github-models/github-models-get-started.mdx | Adds GitHub Models get-started tutorial page. |
| src/frontend/src/content/docs/integrations/ai/github-models/github-models-client.mdx | Refactors GitHub Models docs into a client-integration reference page and adds connection properties. |
| src/frontend/src/content/docs/deployment/overview.mdx | Updates Azure App Service link to new get-started route. |
| src/frontend/src/content/docs/deployment/azure/azure-security-best-practices.mdx | Updates Azure Key Vault links to new get-started route. |
| src/frontend/config/sidebar/integrations.topics.ts | Updates sidebar to nested “Get started / Hosting / Client” structure for affected integrations. |
| src/frontend/config/redirects.mjs | Adds redirects for old integration URLs to new get-started entry points. |
Comments suppressed due to low confidence (3)
src/frontend/src/content/docs/integrations/messaging/nats/nats-client.mdx:90
- The environment variable example uses a resource named
messaging("messaging becomes MESSAGING_URI"), but this page's examples use the connection/resource namenats. This will confuse readers and produces the wrong env var name; update the example to match the resource name used in the doc (for example,nats->NATS_URI).
src/frontend/src/content/docs/integrations/caching/garnet/garnet-get-started.mdx:88 - The "Redis integration" link points to
/integrations/caching/redis/, which was removed in this restructuring. Update it to the new canonical Redis entry point (for example,/integrations/caching/redis/redis-get-started/).
- [Garnet hosting integration](/integrations/caching/garnet/garnet-host/)
- [Garnet client integration](/integrations/caching/garnet/garnet-client/)
- [Redis integration](/integrations/caching/redis/)
src/frontend/src/content/docs/integrations/caching/valkey/valkey-get-started.mdx:87
- The "Redis integration" link points to
/integrations/caching/redis/, which was removed in this restructuring. Update it to the new canonical Redis entry point (for example,/integrations/caching/redis/redis-get-started/).
- [Valkey hosting integration](/integrations/caching/valkey/valkey-host/)
- [Valkey client integration](/integrations/caching/valkey/valkey-client/)
- [Redis integration](/integrations/caching/redis/)
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| - Adds the health check when `DisableHealthChecks?displayProperty=nameWithType` is `false`, which attempts to connect to and create a channel on the RabbitMQ server. | ||
| - Integrates with the `/health` HTTP endpoint, which specifies all registered health checks must pass for app to be considered ready to accept traffic. |
There was a problem hiding this comment.
The health-check bullet includes DisableHealthChecks?displayProperty=nameWithType, which looks like an accidental doc-link/querystring artifact and isn't a valid option/property name. Replace it with the actual option name (DisableHealthChecks).
|
|
||
| - [Redis Distributed Caching hosting integration](/integrations/caching/redis-distributed/redis-distributed-host/) | ||
| - [Redis Distributed Caching client integration](/integrations/caching/redis-distributed/redis-distributed-client/) | ||
| - [Main Redis integration](/integrations/caching/redis/) |
There was a problem hiding this comment.
The "Main Redis integration" link points to /integrations/caching/redis/, which was removed in this restructuring. Update it to the new canonical Redis entry point (for example, /integrations/caching/redis/redis-get-started/).
| - [Main Redis integration](/integrations/caching/redis/) | |
| - [Main Redis integration](/integrations/caching/redis/redis-get-started/) |
| builder.Build().Run(); | ||
| ``` | ||
|
|
||
| The preceding code adds a GitHub Model resource named `chat` using the `GitHubModel` constant for OpenAI's GPT-4o-mini model. The `WithReference` method passes the connection information to the `ExampleProject` project. |
There was a problem hiding this comment.
The text says the preceding snippet uses a GitHubModel constant, but the code uses a string literal ("openai/gpt-4o-mini"). Align the snippet and description (either use a GitHubModel.* constant in code or change the wording to say it's using a model identifier string).
| By default, the integration creates a parameter named `{resource_name}-gh-apikey` that automatically falls back to the `GITHUB_TOKEN` environment variable: | ||
|
|
||
| ```csharp | ||
| var chat = builder.AddGitHubModel("chat", "openai/gpt-4o-mini");; |
There was a problem hiding this comment.
There is an extra semicolon in the C# snippet (...AddGitHubModel(...);;). This makes the example invalid C#; remove the extra ;.
| var chat = builder.AddGitHubModel("chat", "openai/gpt-4o-mini");; | |
| var chat = builder.AddGitHubModel("chat", "openai/gpt-4o-mini"); |
|
|
||
| The preceding code adds a GitHub Model resource named `chat` using the `GitHubModel` constant for OpenAI's GPT-4o-mini model. The `WithReference` method passes the connection information to the `ExampleProject` project. | ||
|
|
There was a problem hiding this comment.
The description says the snippet uses a GitHubModel constant, but the code uses a string literal ("openai/gpt-4o-mini"). Align the snippet and text so readers can copy/paste without confusion.
|
|
||
| The preceding code adds persistence to the Redis resource by taking snapshots of the Redis data at a specified interval and threshold. | ||
|
|
||
| For more Redis hosting integration options, see the main [Redis integration](/integrations/caching/redis/) page. |
There was a problem hiding this comment.
This links to /integrations/caching/redis/, but that overview page was removed in this restructuring. Update the link to the new canonical Redis docs (for example, the Redis hosting integration or Redis get-started page) instead of relying on a redirect.
| For more Redis hosting integration options, see the main [Redis integration](/integrations/caching/redis/) page. | |
| For more Redis hosting integration options, see the main [Redis hosting integration](/integrations/caching/redis-hosting/) page. |
|
|
||
| - [Redis Output Caching hosting integration](/integrations/caching/redis-output/redis-output-host/) | ||
| - [Redis Output Caching client integration](/integrations/caching/redis-output/redis-output-client/) | ||
| - [Main Redis integration](/integrations/caching/redis/) |
There was a problem hiding this comment.
The "Main Redis integration" link points to /integrations/caching/redis/, which was removed in this restructuring. Update it to the new canonical Redis entry point (for example, /integrations/caching/redis/redis-get-started/).
| - [Main Redis integration](/integrations/caching/redis/) | |
| - [Main Redis integration](/integrations/caching/redis/redis-get-started/) |
|
|
||
| ## Configuration and other client features | ||
|
|
||
| Since Garnet is Redis-compatible, all Redis client configuration, keyed services, health checks, and observability features work the same way. See the [Redis integration](/integrations/caching/redis/) page for complete client integration documentation. |
There was a problem hiding this comment.
This references the old Redis overview URL (/integrations/caching/redis/). After the doc split, link directly to the Redis client/host/get-started page as appropriate (this section seems to be pointing readers to Redis client details).
| Since Garnet is Redis-compatible, all Redis client configuration, keyed services, health checks, and observability features work the same way. See the [Redis integration](/integrations/caching/redis/) page for complete client integration documentation. | |
| Since Garnet is Redis-compatible, all Redis client configuration, keyed services, health checks, and observability features work the same way. See the [Redis client integration](/integrations/caching/redis/redis-client/) page for complete client integration documentation. |
| '/integrations/caching/redis-output/': '/integrations/caching/redis-output/redis-output-get-started/', | ||
| '/integrations/caching/valkey/': '/integrations/caching/valkey/valkey-get-started/', | ||
| '/integrations/caching/garnet/': '/integrations/caching/garnet/garnet-get-started/', | ||
| '/integrations/messaging/apache-kafka/': '/integrations/messaging/apache-kafka/apache-kafka-get-started/', |
There was a problem hiding this comment.
The restructured integrations add redirects for most old top-level integration URLs, but /integrations/messaging/rabbitmq/ is not redirected. Since the old RabbitMQ overview page was removed, add a redirect from /integrations/messaging/rabbitmq/ to the new get-started page to avoid 404s from existing inbound links.
| '/integrations/messaging/apache-kafka/': '/integrations/messaging/apache-kafka/apache-kafka-get-started/', | |
| '/integrations/messaging/apache-kafka/': '/integrations/messaging/apache-kafka/apache-kafka-get-started/', | |
| '/integrations/messaging/rabbitmq/': '/integrations/messaging/rabbitmq/rabbitmq-get-started/', |
|
|
||
| ## Configuration and other client features | ||
|
|
||
| Since Valkey is Redis-compatible, all Redis client configuration, keyed services, health checks, and observability features work the same way. See the [Redis integration](/integrations/caching/redis/) page for complete client integration documentation. |
There was a problem hiding this comment.
This references the old Redis overview URL (/integrations/caching/redis/). After the doc split, link directly to the Redis client/host/get-started page as appropriate (this section seems to be pointing readers to Redis client details).
| Since Valkey is Redis-compatible, all Redis client configuration, keyed services, health checks, and observability features work the same way. See the [Redis integration](/integrations/caching/redis/) page for complete client integration documentation. | |
| Since Valkey is Redis-compatible, all Redis client configuration, keyed services, health checks, and observability features work the same way. See the [Redis integration](/integrations/caching/redis/redis-client/) page for complete client integration documentation. |
Restructures documents for the following integrations:
The existing integration documents are comprehensive but difficult for beginners. This PR is intended to keep the comprehensive information but make it easier for those who want to get going quickly.
For each of the above integrations, this PR:
WithReference()method.