Xrm.DataManager.Framework.ApplicationInsights
2026.0.2
dotnet add package Xrm.DataManager.Framework.ApplicationInsights --version 2026.0.2
NuGet\Install-Package Xrm.DataManager.Framework.ApplicationInsights -Version 2026.0.2
<PackageReference Include="Xrm.DataManager.Framework.ApplicationInsights" Version="2026.0.2" />
<PackageVersion Include="Xrm.DataManager.Framework.ApplicationInsights" Version="2026.0.2" />
<PackageReference Include="Xrm.DataManager.Framework.ApplicationInsights" />
paket add Xrm.DataManager.Framework.ApplicationInsights --version 2026.0.2
#r "nuget: Xrm.DataManager.Framework.ApplicationInsights, 2026.0.2"
#:package Xrm.DataManager.Framework.ApplicationInsights@2026.0.2
#addin nuget:?package=Xrm.DataManager.Framework.ApplicationInsights&version=2026.0.2
#tool nuget:?package=Xrm.DataManager.Framework.ApplicationInsights&version=2026.0.2
Xrm.DataManager.Framework.ApplicationInsights
Application Insights logger for Xrm.DataManager.Framework (Microsoft Dataverse batch jobs).
Job executions are traced in Application Insights :
- Traces : job progress and information messages
- Custom events : processed records (successes)
- Exceptions : failures, with job and record context
Built on Application Insights SDK 3.x (OpenTelemetry based) : telemetry is flushed at the end of each job.
Getting started
Configuration
Add the Application Insights connection string in connectionStrings section of app.config, with the reserved name AppInsights :
<connectionStrings>
<add name="Dev" connectionString="AuthType=ClientSecret;Url=https://dev.crm4.dynamics.com;ClientId=...;ClientSecret=..." />
<add name="AppInsights" connectionString="InstrumentationKey=...;IngestionEndpoint=https://..." />
</connectionStrings>
The APPLICATIONINSIGHTS_CONNECTION_STRING environment variable is used when AppInsights entry is not defined (ex : Azure hosting).
Usage
Provide the logger to the processor constructor :
using (var processor = new JobProcessor(settings => new ApplicationInsightLogger(settings)))
{
processor.Execute<MyDataJob>();
}
Or use Application Insights only when it is configured :
ILogger CreateLogger(JobSettings settings) => settings.ApplicationInsightsEnabled ? new ApplicationInsightLogger(settings) : new FileLogger(settings);
using (var processor = new Processor(CreateLogger))
{
processor.Execute(args);
}
Settings
Key (appSettings) |
Default | Description |
|---|---|---|
LogLevel |
1 | 0 : Verbose, 1 : Information, 2 : ErrorsAndSuccess, 3 : ErrorsOnly |
Logging.Record.Attributes |
false | Trace all record columns (record logical name and id are always traced). Keep disabled if records contain personal data |
Documentation
- Complete documentation
- Upgrade guide from 2022.x versions (instrumentation key is replaced by the connection string)
Feedback
Questions, bugs and suggestions : GitHub issues.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Framework | net48 is compatible. net481 was computed. |
-
.NETFramework 4.8
- Microsoft.ApplicationInsights (>= 3.2.0)
- Xrm.DataManager.Framework (>= 2026.0.2)
-
net10.0
- Microsoft.ApplicationInsights (>= 3.2.0)
- Xrm.DataManager.Framework (>= 2026.0.2)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.