Skip to content

Commit a39d4f4

Browse files
Serverless > Azure App Service > Windows: Fix links (#32475)
* Fix broken link references in Azure App Service Windows Code docs Remove outdated [2]: /tracing/setup/dotnet/ link reference and renumber remaining references to maintain sequential ordering [1] through [6]. This fixes a documentation issue where an unused, outdated link to /tracing/setup/dotnet/ was present in the reference list. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> * Remove duplicate dogstatsd link and renumber references Consolidated duplicate [1] and [2] link references that both pointed to /developers/dogstatsd, and renumbered all subsequent link references to maintain sequential ordering. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> * Fix link references in Azure App Service Windows Code docs - Fix Terraform module and azurerm_windows_web_app link references - Remove duplicate link for "deploy your code" - Fix DD_SITE link to point to correct site documentation - Fix unified service tagging link reference - Update custom metrics link to point to custom_metrics page 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> * add some whitespace for readability --------- Co-authored-by: Claude <noreply@anthropic.com>
1 parent 95fd9e1 commit a39d4f4

File tree

1 file changed

+26
-20
lines changed

1 file changed

+26
-20
lines changed

content/en/serverless/azure_app_service/windows_code.md

Lines changed: 26 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ further_reading:
2121

2222
## Overview
2323

24-
The Datadog extension for Azure App Service provides monitoring capabilities in addition to the [Datadog-Azure integration][7], which provides metrics and logs.
24+
The Datadog extension for Azure App Service provides monitoring capabilities in addition to the [Datadog-Azure integration][5], which provides metrics and logs.
2525

2626
- Full distributed APM tracing using automatic instrumentation.
2727
- Customized APM service and trace views showing relevant Azure App Service metrics and metadata.
@@ -48,24 +48,28 @@ The Datadog .NET, Java, and Node.js APM extensions support the following runtime
4848

4949
{{< tabs >}}
5050
{{% tab ".NET" %}}
51+
5152
Datadog's automatic instrumentation relies on the .NET CLR Profiling API. This API allows only one subscriber (for example, Datadog's .NET Tracer with Profiler enabled). To ensure maximum visibility, run only one APM solution within your application environment.
5253

5354
Additionally, if you are using the Azure Native integration, you can use the Datadog resource in Azure to add the extension to your .NET apps. For instructions, see the [App Service extension section][1] of Datadog's [Azure Native integration guide][2].
5455

5556
[1]: /integrations/guide/azure-native-integration/#app-service-extension
5657
[2]: /integrations/guide/azure-native-integration/
58+
5759
{{% /tab %}}
5860
{{% tab "Java" %}}
5961
Support for Java Web Apps is in Preview for extension v2.4+.
6062

6163
There are no billing implications for tracing Java Web Apps during this period.
64+
6265
{{% /tab %}}
6366
{{< /tabs >}}
6467

6568
## Installation
69+
6670
Datadog recommends doing regular updates to the latest version of the extension to ensure optimal performance, stability, and availability of features. Note that both the initial install and subsequent updates require your web app to be fully stopped in order to install/update successfully.
6771

68-
If you haven't already, set up the [Datadog-Azure integration][5]. You can verify that your Azure integration is configured correctly by ensuring that you see the `azure.app_services.count` or `azure.functions.count` metrics in Datadog.
72+
If you haven't already, set up the [Datadog-Azure integration][3]. You can verify that your Azure integration is configured correctly by ensuring that you see the `azure.app_services.count` or `azure.functions.count` metrics in Datadog.
6973

7074
<div class="alert alert-info">This step is critical for metric/trace correlation and functional trace panel views and improves the overall experience of using Datadog with Azure App Services.
7175
</div>
@@ -182,7 +186,7 @@ The [Datadog Windows Web App module][2] only deploys the Web App resource and ex
182186

183187
{{< img src="infrastructure/serverless/azure_app_services/choose_extension.png" alt="Example of Extensions page in Azure portal, showing .NET Datadog APM extension." style="width:100%;" >}}
184188

185-
6. Accept the legal terms, click **OK**, and wait for the installation to complete.
189+
6. Accept the legal terms, click **OK**, and wait for the installation to complete.
186190
<div class="alert alert-danger">This step requires that your application be in a stopped state.</div>
187191

188192
7. Start the main application, click **Start**:
@@ -201,17 +205,17 @@ The [Datadog Windows Web App module][2] only deploys the Web App resource and ex
201205
{{% /tab %}}
202206
{{< /tabs >}}
203207

204-
205208
## Custom metrics
206209

207-
The Azure App Service extension includes an instance of [DogStatsD][3], Datadog's metrics aggregation service. This enables you to submit custom metrics, service checks, and events directly to Datadog from Azure Web Apps and Functions with the extension.
210+
The Azure App Service extension includes an instance of [DogStatsD][1], Datadog's metrics aggregation service. This enables you to submit custom metrics, service checks, and events directly to Datadog from Azure Web Apps and Functions with the extension.
208211

209-
Writing custom metrics and checks in Azure App Service is similar to the process for doing so with an application on a host running the Datadog Agent. **Unlike** the [standard DogStatsD config process][3], there is no need to set ports or a server name when initializing the DogStatsD configuration. There are ambient environment variables in Azure App Service that determine how the metrics are sent (requires v6.0.0+ of the DogStatsD client).
212+
Writing custom metrics and checks in Azure App Service is similar to the process for doing so with an application on a host running the Datadog Agent. **Unlike** the [standard DogStatsD config process][1], there is no need to set ports or a server name when initializing the DogStatsD configuration. There are ambient environment variables in Azure App Service that determine how the metrics are sent (requires v6.0.0+ of the DogStatsD client).
210213

211214
To submit custom metrics to Datadog from Azure App Service using the extension:
212215

213216
{{< tabs >}}
214217
{{% tab ".NET" %}}
218+
215219
1. Add the [DogStatsD NuGet package](https://www.nuget.org/packages/DogStatsD-CSharp-Client) to your Visual Studio project.
216220
2. Initialize DogStatsD and write custom metrics in your application.
217221
3. Deploy your code to Azure App Service.
@@ -255,9 +259,10 @@ client.Increment("sample.startup");
255259

256260
{{% /tab %}}
257261
{{% tab "Node.js" %}}
262+
258263
1. [Initialize DogStatsD and write custom metrics][1] in your application.
259-
1. Deploy your code to a supported Azure Web App.
260-
1. If you have not already, install Datadog's Azure App Service Node.js extension.
264+
2. Deploy your code to a supported Azure Web App.
265+
3. If you have not already, install Datadog's Azure App Service Node.js extension.
261266

262267
<div class="alert alert-info">You do not need to install a Node.js DogStatsD client, as it is included in the Node.js tracer (<code>dd-trace</code>) packaged in the Azure App Service extension.</div>
263268

@@ -282,11 +287,12 @@ tracer.dogstatsd.decrement('example_metric.decrement', 1, { environment: 'dev' }
282287
- Set `DD_TRACE_ENABLED` to `false`.
283288
- Set `DD_AAS_ENABLE_CUSTOM_METRICS` to `true`.
284289

285-
Learn more about [custom metrics][4].
290+
Learn more about [custom metrics][2].
286291

287292
## Logging
288293

289294
### Application logging
295+
290296
{{< tabs >}}
291297
{{% tab ".NET" %}}
292298

@@ -299,6 +305,7 @@ Both methods allow trace ID injection, making it possible to connect logs and tr
299305

300306
[1]: /logs/log_collection/csharp/#agentless-logging-with-apm
301307
[2]: /logs/log_collection/csharp/#agentless-logging-with-serilog-sink
308+
302309
{{% /tab %}}
303310
{{% tab "Java" %}}
304311

@@ -334,6 +341,7 @@ Configure these environment variables in your Azure App Service Application Sett
334341

335342
{{< tabs >}}
336343
{{% tab ".NET" %}}
344+
337345
**Code Example: Microsoft Native Logging**
338346

339347
An example of how to set up logging in a .NET application using Microsoft.Extensions.Logging:
@@ -354,12 +362,12 @@ public class WeatherForecastController : ControllerBase
354362
public IActionResult Get()
355363
{
356364
_logger.LogInformation("Processing weather forecast request");
357-
365+
358366
// Your business logic here
359367
var forecast = GetWeatherForecast();
360-
368+
361369
_logger.LogInformation("Weather forecast retrieved for user: {UserId}", userId);
362-
370+
363371
return Ok(forecast);
364372
}
365373
}
@@ -537,7 +545,7 @@ It is likely that you do not have the Azure integration configured to monitor yo
537545
538546
1. Go to the Azure integration tile.
539547
540-
2. Ensure you have installed the [Azure integration][5] for the Azure subscription where your application is running.
548+
2. Ensure you have installed the [Azure integration][3] for the Azure subscription where your application is running.
541549
542550
3. Ensure that any App Service plan filtering rules you have applied include the App Service plan where the app is running. If an App Service plan is not included, all apps and functions hosted on it are also not included. Tags on the app itself are not used for filtering by Datadog.
543551
@@ -551,16 +559,14 @@ It is likely that you do not have the Azure integration configured to monitor yo
551559
552560
**Note**: To expedite the process of investigating application errors with the support team, set `DD_TRACE_DEBUG:true` and add the content of the Datadog logs directory (`%AzureAppServiceHomeDirectory%\LogFiles\datadog`) to your email.
553561
554-
Still need help? Contact [Datadog support][6].
562+
Still need help? Contact [Datadog support][4].
555563
556564
### Further Reading
557565
558566
{{< partial name="whats-next/whats-next.html" >}}
559567
560568
[1]: /developers/dogstatsd
561-
[2]: /tracing/setup/dotnet/
562-
[3]: /developers/dogstatsd
563-
[4]: /metrics/
564-
[5]: /integrations/azure/
565-
[6]: /help
566-
[7]: https://app.datadoghq.com/integrations/azure
569+
[2]: /metrics/custom_metrics/
570+
[3]: /integrations/azure/
571+
[4]: /help
572+
[5]: https://app.datadoghq.com/integrations/azure

0 commit comments

Comments
 (0)