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

如何在Linux版Azure App Service中获取详细400错误信息

Linux版Azure App Service获取详细400错误信息的方法

1. 启用应用与容器日志

在Azure门户的App Service配置里,开启应用日志(可选文件系统或Blob存储)和容器日志。这些日志会记录应用层面的请求细节,包括JSON解析错误的具体提示,比如字段缺失、格式不合法等。你可以通过门户的「日志流」实时查看,也能下载日志文件慢慢分析。

2. 自定义请求日志中间件

如果你的应用是基于Node.js、Python、Java这类框架开发的,可以在代码里加个自定义中间件,专门捕获400错误并记录完整请求内容(包括请求体里的JSON)。举两个例子:

  • Node.js(Express):
app.use((err, req, res, next) => {
  if (err.status === 400) {
    console.error(`400错误详情:请求体=${JSON.stringify(req.body)},错误信息=${err.message}`);
  }
  next(err);
});
  • Python(Flask):
from flask import request
@app.errorhandler(400)
def bad_request(error):
    app.logger.error(f"400错误:请求体={request.get_data(as_text=True)},错误信息={str(error)}")
    return str(error), 400

3. 用Azure Monitor分析日志

配置Azure Monitor的诊断设置,把App Service的日志(包括请求日志)发送到Log Analytics工作区。然后用Kusto查询语言筛选出状态码为400的请求,查看请求体、头部等详细属性。示例查询:

AppServiceHTTPLogs
| where StatusCode == 400
| project TimeGenerated, RequestBody, StatusCode, Message

4. 检查容器内Web服务器配置

如果应用部署在自定义容器里,确保容器内的Web服务器(比如Nginx、Apache)开了详细错误日志。比如Nginx可以在配置文件里加一行:

error_log /var/log/nginx/error.log debug;

这样会记录更细致的请求处理过程,包括JSON解析失败的具体原因。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 05:23:21