Azure / Azure/azure-functions-host

`APPINSIGHTS_INSTRUMENTATIONKEY` interfers with multi-dimensional telemetry

Open
#7,507 8 comments 0 reactions 0 assignees View on GitHub
needs-investigation
Dominant language
C#
Stars
2k
Forks
482
Avg merge
2d 10h
Merged PRs (30d)
36

Description

#### Check for a solution in the Azure portal
For issues in production, please check for a solution to common issues in the Azure portal before opening a bug. In the Azure portal, navigate to your function app, select `Diagnose and solve problems` from the left, and view relevant dashboards before opening your issue.

#### Investigative information

Please provide the following:

- Timestamp: N/A
- Function App version: `~3`
- Function App name: `azure-autoscaling-toolbox` (works) & `azure-autoscaling-toolbox-repro` (does not work)
- Function name(s) (as appropriate): `kubernetes-app-scaled-event`
- Invocation ID: N/A
- Region: West Europe

#### Repro steps

Provide the steps required to reproduce the problem:

I have deployed the same application on 2 Function Apps:
1. Deploy Function App
2. Configure Application Insights key
3. Call endpoint
4. Write metric with multiple dimensions (through [Arcus Observability](https://observability.arcus-azure.net/), not the built-in LogMetric extension, see https://github.com/tomkerkhove/azure-autoscaling-toolbox/blob/main/samples/autoscaling-over-time-dashboard/src/AzureAutoscalingToolbox.Samples.StatefulAppInstances/Entities/ApplicationEntity.cs#L71)

#### Expected behavior

Provide consistent telemetry

#### Actual behavior

Custom dimensions are ommitted through some voodoo.

![image](https://user-images.githubusercontent.com/4345663/123643828-1903c880-d825-11eb-9285-db2426be085c.png)
- Left: `APPLICATIONINSIGHTS_INSTRUMENTATIONKEY` configuration key name
- Right: `APPINSIGHTS_INSTRUMENTATIONKEY` configuration key name

#### Known workarounds

Use another configuration key than `APPINSIGHTS_INSTRUMENTATIONKEY`.

#### Related information

Provide any related information

* Programming language used: .NET
* Links to source: https://github.com/tomkerkhove/azure-autoscaling-toolbox/tree/main/samples/autoscaling-over-time-dashboard
* Bindings used: HTTP

Contributor guide

Open the contributing guide

Research direction

Start with the referenced ApplicationEntity.cs example and reproduce the HTTP function behavior in the two Function Apps using the two instrumentation-key configuration names. Compare the resulting multi-dimensional telemetry and trace how the Function App v3 host handles those settings; done means custom dimensions are consistent with either supported key name.

Written by the indexing model from the issue text.

Assessment

Tech stack
azure, csharp
Domain
cloud, observability
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
28/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.