【问题标题】:List of failed requests in Azure application gatewayAzure 应用程序网关中的失败请求列表
【发布时间】:2019-08-06 05:49:59
【问题描述】:

我们可以在 Azure 应用程序网关中看到失败的请求计数,但是我们如何在 Logs 部分看到失败的请求列表?

在应用程序网关的诊断设置中启用的所有日志。

我们需要在应用程序网关的日志部分中至少看到请求的路径(URL)和失败请求的响应代码。

由于访问日志存储在存储帐户(文件夹结构)中的方式,通过存储帐户访问所需的数据有点困难。

【问题讨论】:

    标签: azure azure-application-gateway


    【解决方案1】:

    这可以通过在日志上运行以下查询来实现,我有一篇关于同一主题的博文here

    // Errors by URI
    // Number of errors by URI.
    AzureDiagnostics
    | where ResourceType == "APPLICATIONGATEWAYS" and OperationName == "ApplicationGatewayAccess" and httpStatus_d > 399
    | summarize AggregatedValue = count() by requestUri_s
    | sort by AggregatedValue desc
    

    【讨论】:

      【解决方案2】:

      取自此doc,您应该会在访问日志中看到请求的 URL 和返回代码。仅当您在每个应用程序网关实例上启用了 access log 时才会生成它。每 300 秒收集一次访问日志。日志数据更新可能有延迟。

      访问日志:您可以使用此日志查看应用程序网关访问 模式和分析重要信息。 这包括来电者的 IP、请求的 URL、响应延迟、返回码和字节数 每 300 秒收集一次访问日志。该日志包含 每个应用程序网关实例一条记录。应用程序 网关实例由 instanceId 属性标识。

      【讨论】:

      • 由于访问日志存储在存储账户(文件夹结构)中的方式,通过存储资源管理器查询到需要的数据有点困难。寻找一种通过应用程序网关中的日志部分查询数据的方法。 (更新了问题)
      • 你可以找到query examples,这是你想要的吗?
      • 我之前确实检查过提到的帖子,但是如果尝试查询 AzureDiagnostics | 我们会看到以下错误限制 50 错误说 - SYNTAX ERROR 'take' operator: Failed to resolve table or column expression named 'AzureDiagnostics'
      • 尝试搜索 Log Analytics 工作区,然后在您的特定日志分析工作区---常规---日志上查询它,而不是访问 azure 应用程序网关---监控---日志,有时,这两种方式都有一些延迟结果。此外,您应该会在已启用的存储帐户中看到访问日志。
      猜你喜欢
      • 2020-12-08
      • 1970-01-01
      • 1970-01-01
      • 2017-07-16
      • 1970-01-01
      • 2021-10-13
      • 2022-08-19
      • 1970-01-01
      • 2018-08-04
      相关资源
      最近更新 更多