You need to enable JavaScript to run this app. Azure Blob存储触发器函数部署后异常停止触发,仅重启或打开页面时恢复
优惠活动
大模型
产品
解决方案
定价
更多

Azure Blob存储触发器函数部署后异常停止触发,仅重启或打开页面时恢复

业务背景
  • 开发了一款Blob存储触发类型的Azure Function,核心流程为:Blob存储新增文件时自动触发,读取上传的JSON内容并将信息写入数据库
  • 本地运行阶段功能正常,初始上线阶段也符合业务预期
  • 近期检查发现函数未触发、数据未正常写入数据库,但函数应用控制台显示状态为“运行中”
  • 临时恢复规律:重启应用、或在浏览器端打开Azure Functions详情页面后,函数可恢复数小时正常运行,数小时后又会自动停止触发
  • 当前函数配置:运行时版本3.0.15571.0,计费模式为Consumption消费计划,已接入Application Insights完成应用监控
  • 目前对Azure Functions平台的使用经验较少,整理现有排查信息供问题定位参考
已完成排查及发现

Application Insights监控排查结果

  • 拉取近3天的请求记录:函数仅在昨日手动排查的时段有大量触发记录,该时段为补拉所有未处理历史文件产生的请求
  • 最后一条请求记录停留在昨日补数时段,后续无任何新的触发请求日志
  • 排查过程留存两张界面快照:分别展示排查时段的请求量分布、最后请求的时间查询结果

Kudu日志排查结果

收集到的运行日志包含三类内容:

  1. 代码开发阶段预设写入的正常执行日志
  2. 系统层面记录的触发、执行日志,摘选片段如下:
2021-04-26T17:50:23.377 [Information] Executing 'FunctionSaveOnBDD' (Reason='New blob detected: containerforiotcentral/c618a003-9934-4b25-a674-cd709b6afb07/4/2021/03/27/11/22/vliwcspeyze7a', Id=34a100dc-135f-41ed-ba7b-209d85f28b63)
2021-04-26T17:50:23.377 [Information] Trigger Details: MessageId: 0113b888-75f7-4cb8-b9cd-562255e34c56, DequeueCount: 1, InsertionTime: 2021-04-26T17:39:03.000+00:00, BlobCreated: 2021-03-27T11:23:53.000+00:00, BlobLastModified: 2021-03-27T11:23:53.000+00:00
2021-04-26T17:50:23.378 [Information] Executing 'FunctionSaveOnBDD' (Reason='New blob detected: containerforiotcentral/c618a003-9934-4b25-a674-cd709b6afb07/4/2021/03/27/11/21/vliwcspeyze7a', Id=5e7ee513-346d-45d4-a8a4-b2f981ed470a)
2021-04-26T17:50:23.378 [Information] Trigger Details: MessageId: 7525894a-ba7c-47b9-802a-54faa60a603a, DequeueCount: 1, InsertionTime: 2021-04-26T17:39:03.000+00:00, BlobCreated: 2021-03-27T11:22:53.000+00:00, BlobLastModified: 2021-03-27T11:22:53.000+00:00
2021-04-26T17:50:23.378 [Information] Executing 'FunctionSaveOnBDD' (Reason='New blob detected: containerforiotcentral/c618a003-9934-4b25-a674-cd709b6afb07/4/2021/03/27/11/23/vliwcspeyze7a', Id=e3d0ca32-2d07-4b18-8bb9-4edda7de68b5)
2021-04-26T17:50:23.378 [Information] Trigger Details: MessageId: b8bbd557-9710-4cea-81f7-7a243aa96111, DequeueCount: 1, InsertionTime: 2021-04-26T17:39:03.000+00:00, BlobCreated: 2021-03-27T11:24:53.000+00:00, BlobLastModified: 2021-03-27T11:24:53.000+00:00
2021-04-26T17:50:23.379 [Information] Executed 'FunctionSaveOnBDD' (Succeeded, Id=704c2ace-9688-40da-8aa7-a19190ece7c1, Duration=702ms)
2021-04-26T17:50:23.399 [Information] C# Blob trigger function Processed blob
 Name:c618a003-9934-4b25-a674-cd709b6afb07/4/2021/03/27/11/04/vliwcspeyze7a 
 Content: telemetry
  1. 本地测试阶段未复现的SQL执行异常日志,摘选片段如下:
2021-04-26T17:50:23.270 [Information] Microsoft.Data.SqlClient.SqlException (0x80131904): Transaction (Process ID 66) was deadlocked on lock resources with another process and has been chosen as the deadlock victim. Rerun the transaction.
   at Microsoft.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
   at Microsoft.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
   at Microsoft.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
   at Microsoft.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, Boolean& dataReady)
   at Microsoft.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean isAsync, Int32 timeout, Boolean asyncWrite)
   at Microsoft.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, Boolean sendToPipe, Int32 timeout, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry, String methodName)
   at Microsoft.Data.SqlClient.SqlCommand.ExecuteNonQuery()
   at AzureFunctionBlobTrigger0103DEF.BlobTriggersaveonBDD.Run(Stream myBlob, String name, ILogger log) in C:\Users\Tere\source\repos\AzureFunctionBlobTrigger0103DEF\BlobTriggersaveonBDD.cs:line 52
ClientConnectionId:f46c83df-9566-4af9-866e-12728d39b646
Error Number:1205,State:18,Class:13
ClientConnectionId before routing:3f74ce3e-43a1-4c9c-8ddb-8e9c9d8610a9
Routing Destination:af4408adfd33.tr16.westeurope1-a.worker.database.windows.net,11040

内容的提问来源于stack exchange,提问作者Teresa Rey Alonso

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.24 01:27:03