-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Add prerequisites sections to Azure App Service docs #32479
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: lpimentel/apm-dotnet-azure-functions-prerequisites
Are you sure you want to change the base?
Add prerequisites sections to Azure App Service docs #32479
Conversation
|
Warning This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
This stack of pull requests is managed by Graphite. Learn more about stacking. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Claude Code Review: Reviewing for style guide compliance, consistency, and completeness across all three Azure App Service documentation pages.
| 2. **Understand container instrumentation:** This guide instruments a containerized app with a sidecar. For other deployment models, see: | ||
| - [Windows Code](/serverless/azure_app_service/windows_code) - Extension-based | ||
| - [Linux Code](/serverless/azure_app_service/linux_code) - Sidecar for non-containerized apps | ||
| 3. **Review container setup basics:** If you're new to Datadog's .NET tracer in containers, see [Tracing .NET Core Applications](/tracing/trace_collection/automatic_instrumentation/dd_libraries/dotnet-core) for background. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Claude Code: The phrase "If you're new to" uses a contraction. Per CONTRIBUTING.md, avoid contractions like "you're" and use more direct, imperative language.
Suggested:
If new to Datadog's .NET tracer in containers, see [Tracing .NET Core Applications](/tracing/trace_collection/automatic_instrumentation/dd_libraries/dotnet-core) for background.
|
|
||
| **Supported runtimes**: Java, Node.js, .NET, PHP, Python | ||
|
|
||
| ## Prerequisites |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Claude Code: This Prerequisites section is .NET-focused but the page supports multiple runtimes (Java, Node.js, PHP, Python per line 16). The prerequisites should either:
- Be generic for all runtimes, or
- Include runtime-specific subsections
Consider restructuring:
1. **Install the Azure integration:** Install the [Datadog-Azure integration](/integrations/azure/) to collect Azure metrics and logs.
2. **Understand the sidecar approach:** This setup uses a sidecar container pattern. For other deployment models, see [Windows Code](/serverless/azure_app_service/windows_code) or [Linux Container](/serverless/azure_app_service/linux_container).
3. **Review runtime compatibility:**
- .NET: [.NET Core Compatibility](/tracing/trace_collection/compatibility/dotnet-core)
- Java: [Java Compatibility](/tracing/trace_collection/compatibility/java)
- Node.js: [Node.js Compatibility](/tracing/trace_collection/compatibility/nodejs)
- Python: [Python Compatibility](/tracing/trace_collection/compatibility/python)
|
|
||
| Share the content of the **Log stream** with [Datadog Support][9]. | ||
|
|
||
| ## Additional Resources |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Claude Code: The "Additional Resources" section only includes .NET-specific links, but this page supports Java, Node.js, PHP, and Python as well (per line 16). Either:
- Add resources for all supported runtimes, or
- Move this section under a .NET-specific heading
For a multi-runtime page, consider a structure like:
## Additional Resources
### .NET
- [Tracing .NET Core Applications](/tracing/trace_collection/automatic_instrumentation/dd_libraries/dotnet-core)
- [.NET Core Library Configuration](/tracing/trace_collection/library_config/dotnet-core/)
### All Runtimes
- [Custom Metrics](/serverless/custom_metrics/)
- [Troubleshooting](/serverless/guide/troubleshoot_serverless_monitoring)
|
|
||
| ## Prerequisites | ||
|
|
||
| 1. **Install the Azure integration:** Install the [Datadog-Azure integration](/integrations/azure/) first to correlate APM traces with Azure metrics. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Claude Code: Inconsistency in phrasing across the three Azure App Service pages. Compare:
- linux_code.md: "Install the Datadog-Azure integration to collect Azure metrics and logs."
- linux_container.md: "Install the Datadog-Azure integration to collect Azure metrics and logs."
- windows_code.md: "Install the Datadog-Azure integration first to correlate APM traces with Azure metrics."
The Windows version adds "first" and has a different explanation. For consistency, use the same wording across all three pages, or clarify why they differ.
| Still need help? Contact [Datadog support][5]. | ||
| ## Additional Resources |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Claude Code: The Additional Resources section includes both .NET Core and .NET Framework links, but doesn't clarify when to use which. Consider adding brief context:
## Additional Resources
### .NET Core (Isolated Worker Model)
- [Tracing .NET Core Applications](/tracing/trace_collection/automatic_instrumentation/dd_libraries/dotnet-core)
- [.NET Core Library Configuration](/tracing/trace_collection/library_config/dotnet-core/)
### .NET Framework (In-Process Model)
- [Tracing .NET Framework Applications](/tracing/trace_collection/automatic_instrumentation/dd_libraries/dotnet-framework)
- [.NET Framework Library Configuration](/tracing/trace_collection/library_config/dotnet-framework/)
### All .NET Versions
- [.NET Custom Instrumentation](/tracing/trace_collection/custom_instrumentation/dotnet/)
- [.NET Diagnostic Tool](/tracing/troubleshooting/dotnet_diagnostic_tool)
a83e9de to
8785099
Compare
fea4b77 to
ed84d6e
Compare
Add Prerequisites sections to all three Azure App Service deployment variants (Windows Code, Linux Code, Linux Container) to help users understand requirements and platform-specific differences before setup. Key additions: - Prerequisites sections explaining deployment model differences - Cross-references between the three App Service variants - Enhanced .NET sections with links to APM and configuration docs - Configuration sections with platform-specific notes - Additional Resources sections with troubleshooting links Windows Code: - Warning about not installing MSI on App Service - Links to Azure Functions and Linux variants Linux Code: - Enhanced .NET section with environment variable guidance - Additional Resources section with APM cross-references Linux Container: - Prerequisites explaining sidecar vs other approaches - Configuration section with container-specific notes - Additional Resources with custom instrumentation links This improves navigation and helps users understand how each Azure App Service deployment model differs from standard APM setup. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
- Remove "you're" contraction in linux_container.md per style guide - Make linux_code.md prerequisites multi-runtime (add Java, Node.js, Python) - Restructure linux_code.md Additional Resources for all languages - Fix inconsistent Azure integration wording in windows_code.md - Add context to windows_code.md resources (.NET Core vs Framework) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
ed84d6e to
3e69a6c
Compare
8785099 to
a5917ba
Compare

What does this PR do? What is the motivation?
Adds Prerequisites sections and improves cross-referencing across all three Azure App Service documentation pages (Windows Code, Linux Code, and Linux Container).
Changes:
Motivation:
Users landing on Azure App Service docs often don't understand which guide applies to their deployment model (Windows vs Linux, Code vs Container) or how Azure App Service setup differs from standard .NET APM setup. This leads to confusion about whether to use the extension, sidecar, or MSI installer. These changes provide clear prerequisites and better navigation between related deployment options.
Merge instructions
Merge readiness:
For Datadog employees:
Your branch name MUST follow the
<name>/<description>convention and include the forward slash (/). Without this format, your pull request will not pass CI, the GitLab pipeline will not run, and you won't get a branch preview. Getting a branch preview makes it easier for us to check any issues with your PR, such as broken links.If your branch doesn't follow this format, rename it or create a new branch and PR.
[6/5/2025] Merge queue has been disabled on the documentation repo. If you have write access to the repo, the PR has been reviewed by a Documentation team member, and all of the required checks have passed, you can use the Squash and Merge button to merge the PR. If you don't have write access, or you need help, reach out in the #documentation channel in Slack.
Additional notes
This PR complements the decision trees in #32476 and the prerequisites for Lambda (#32477) and Azure Functions (#32478) by completing the serverless documentation improvements for all Azure App Service deployment models.