Dataverse Application Insight So schreiben Sie eine benutzerdefinierte DimensionC#

Ein Treffpunkt für C#-Programmierer
Anonymous
 Dataverse Application Insight So schreiben Sie eine benutzerdefinierte Dimension

Post by Anonymous »

In meinem CRM 365-Plugin muss ich Protokolle in Application Insight schreiben. Dies kann ich mithilfe von ILogger und der Microsoft.Xrm.Sdk.PluginTelemetry Library erreichen. Es fällt mir jedoch schwer, Protokolldetails in die benutzerdefinierte App Insight-Dimension zu schreiben.
Ich habe bereits mehrere Ansätze ausprobiert, erhalte aber immer noch nicht das erwartete Ergebnis.
  • Verwenden Sie AddCustomProperty
    ILogger logger = (ILogger)serviceProvider.GetService(typeof(ILogger));
    logger.AddCustomProperty("Environment", "DEV");
    logger.AddCustomProperty("Type", "CustomAction");
Das Ergebnis dieser benutzerdefinierten Dimension hat nur CategoryName aus der BeginScope-Methode
  • Wörterbuch zu BeginScope hinzufügen

    Code: Select all

         ILogger logger = (ILogger)serviceProvider.GetService(typeof(ILogger));
    var customProps = new Dictionary
    {
    { "Environment", "DEV" },
    { "Type", "CustomAction" }
    };
    using (logger.BeginScope(customProps))
    
Das Ergebnis davon in meiner CustomDimenstion: In CategoryName wird keine weitere Eigenschaft erstellt, diese wird stattdessen in CategoryName gespeichert.

Code: Select all

OptionListGetCustomAction Scope => System.Collections.Generic.Dictionary2[System.String,System.String
Ich denke darüber nach, alle meine benutzerdefinierten Dimensionen in String-JSON zu speichern, möchte aber noch einmal überprüfen, wie sich Microsoft.Xrm.Sdk.PluginTelemetry verhält.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post