You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

修复API部署至Azure时出现的"Message": "An error has occurred."错误

解决API部署Azure后的通用错误与日志排查问题

一、先排查数据库迁移导致的API错误

  • 确认Azure数据库连接字符串:检查Azure App Service配置项中的ConnectionStrings,确保指向正确的Azure SQL数据库,且数据库账户拥有db_owner级别的权限,避免因权限不足导致迁移执行失败。
  • 手动在Azure执行迁移:通过Azure Portal进入App Service的Console工具,切换到站点根目录,运行对应框架的迁移命令,比如.NET Core环境下执行dotnet ef database update,查看命令执行时的具体报错信息。
  • 验证迁移文件部署完整性:确认发布到Azure的包中包含了最新生成的迁移类文件,部分发布配置可能会遗漏这些文件,导致Azure环境无法找到迁移脚本。
  • 临时启用详细错误输出:在App Service的Configuration中,将ASPNETCORE_ENVIRONMENT设置为Development(排查完成后改回Production),此时API会返回详细的错误堆栈信息,替换通用的"An error has occurred.",直接定位问题根源。

二、修复Log Stream为空的问题

  • 检查日志开关状态:在Azure Portal的App Service -> App Service logs,确保开启了Application Logging (Filesystem)或Application Logging (Blob),并将日志级别设置为Verbose或Information,Filesystem模式需注意设置合理的保留周期。
  • 手动添加日志超时变量:在App Service的Configuration -> Application settings中,新增键为SCM_LOGSTREAM_TIMEOUT、值为3600(单位:秒)的环境变量,添加完成后重启App Service。
  • 直接查看Kudu日志文件:访问https://<你的AppService名称>.scm.azurewebsites.net/DebugConsole,进入LogFiles目录,查看applicationLogs、stdout.log或stderr.log等文件,这些文件中可能保存了Log Stream未展示的日志内容。
  • 重启App Service:日志服务可能未正常初始化,重启App Service后再次尝试打开Log Stream。

内容的提问来源于stack exchange,提问作者Thiago

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 01:05:21