Azure函数:Blob触发器引发System.OutOfMemoryException

时间:2020-08-05 06:04:33

标签: azure azure-functions azure-storage-blobs

我收到Blob触发器Azure函数的System.OutOfMemoryException异常。 当我在本地执行时,它工作正常。

enter image description here

博客触发器Azure功能:

public static class ProcessEvent
    {
        [FunctionName(nameof(ProcessEvent))]
        public static async Task Run([BlobTrigger(BlobStorageContainer.Name + "/{name}",
            Connection = "AzureWebJobsStorage")]
            Stream eventBlob, string name,
            [Inject] ILoggingService loggingService,
            [Inject] IEventProcessorService eventProcessor,
            [Inject] IBlobClient blobClient)
        {
            var logger = new Logger(loggingService);
            try
            {
                logger.Info($"Starting blob job tracker for file name {name}",
                    nameof(ProcessEvent));

                var eventContent = eventBlob.ReadAsString();

                var result = await eventProcessor.HandleProcessor(eventContent, logger);

                if (result)
                {
                    await blobClient.DeleteBlobAsync(BlobStorageContainer.Name, name);
                    logger.Info($"Blob deleted successfully file name: {name}");
                }
                else
                {
                    logger.Warning($"Unable to process blob job for file with name: {name}");
                }
            }
            catch (Exception ex)
            {
                logger.Error($"Unable to process blob job for file with name: {name}", ex,
                    nameof(ProcessEvent));
            }
        }
    }

我的应用服务计划:

enter image description here

1 个答案:

答案 0 :(得分:1)

您可以在门户网站->您的功能应用程序->诊断并解决问题->内存分析->查看完整报告中诊断内存使用情况。 enter image description here

它显示了过去24小时内每个实例的整体物理内存使用百分比。

https://docs.microsoft.com/en-us/azure/app-service/overview-diagnostics#health-checkup-graphs