EventSourceException при обработке события «DiagnosticsEventThrottlingHasBeenResetForTheEvent» - PullRequest
0 голосов
/ 29 января 2019

Выполнение действий в качестве EventHubTrigger с функцией Azure.

Это сообщение трассировки появляется во всем нашем экземпляре AppInsights.Я не знаю, что такое средства или что может быть причиной.Я рад предоставить любую информацию, которая может помочь в отладке.

AI (внутренний): [Microsoft-ApplicationInsights-Core] EventSourceException при обработке события «DiagnosticsEventThrottlingHasBeenResetForTheEvent»: System.NullReferenceException: ссылка на объект не установленак экземпляру объекта.

sdkVersion: dotnet: 2.8.1-22898

AI (внутренний): EventSourceException при обработке события «DiagnosticsEventThrottlingHasBeenResetForTheEvent»: System.NullReferenceException: Ссылка на объект не установлена ​​для экземпляра объекта.

sdkVersion: dotnet: 2.7.2-23439

Пример кода

[FunctionName("UpdateFunction")]
public async static Task Run(
    [EventHubTrigger("Product-events", Connection = "EventHubConnectionString", ConsumerGroup = "%ConsumerGroupName%")]Message[] objMessage,
    [Blob("%ProductBlobContainerName%", System.IO.FileAccess.Read, Connection = "BlobStorageConnectionString")] CloudBlobContainer productblobContainer,
    [CosmosDB(databaseName: "DatabaseName", collectionName: "procudtCollectionName", ConnectionStringSetting = "DBConnectionString")]DocumentClient client,
    ExecutionContext context, ILogger log)
{
    TelemetryClient telemetry = TelemetryCreation.Instantiate(context);
    ConcurrentBag<int> DocumentToInsert= new ConcurrentBag<int>();
    ConcurrentBag<Message> DocumentToBeDeleted = new ConcurrentBag<Message>();
    try
    {
        telemetry.TrackTrace($"{context.FunctionName} Started", SeverityLevel.Information, new Dictionary<string, string>
        {
            {
                "PrefixName",
                objMessage[0].ToString()
            },
            {
                "NumberOfMsgs",
                objMessage.Length.ToString()
            }
        });

        await UpsertProvider(objMessage, productblobContainer, client, telemetry, DocumentToInsert, DocumentToBeDeleted);
        if (DocumentToBeDeleted.Count > 0)
        {
            DeleteProviders.DeleteProvider(DocumentToBeDeleted.ToArray(), client, context, telemetry);
        }

        telemetry.TrackTrace($"{context.FunctionName} Completed", SeverityLevel.Information);
    }
    catch (Exception ex)
    {
        telemetry.TrackException(ex, new Dictionary<string, string> {
            { "Azure Background Function Name",context.FunctionName },
            { "Read Data from container > folder",  productblobContainer.ToString() + ">" + objMessage[0].PrefixName.ToString()},
            { "Total Documents received", objMessage.Length.ToString() },
            { "Number of documents to insert", DocumentToInsert.Count.ToString() },
             { "List of Documents to be updated", JsonConvert.SerializeObject(DocumentToInsert).ToString() },
            { "Number of documents skipped (Location is null)", DocumentToBeDeleted.Count.ToString() },
            { "List of Documents skipped", JsonConvert.SerializeObject(DocumentToBeDeleted).ToString() },
            { "Exception Message",ex.Message },
            { "Exception InnerMessage",ex.InnerException.ToString() }
            });

        throw;
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...