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

如何通过REST API获取Azure自动化Runbook的执行错误

获取Azure Automation Runbook执行错误的REST API方法

我来帮你搞定这个问题——要拿到Runbook的执行错误信息,你得用Job Get API,而不是你现在用的输出获取接口。

  • 用对API接口
    你当前调用的output接口只能获取Runbook执行过程中的日志输出内容,作业的错误详情(比如执行失败的根因、异常堆栈)需要通过你看到的包含ErrorResponse字段的Job Get接口来获取。

  • 具体请求格式
    发送GET请求到以下地址,记得替换掉占位符:

    https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Automation/automationAccounts/{automationAccountName}/jobs/{jobName}?api-version=2017-05-15-preview
    
  • 读取ErrorResponse字段
    这个API返回的JSON响应里,错误信息嵌套在properties.error路径下,也就是文档里提到的ErrorResponse。当Runbook执行失败时,你会看到类似这样的结构:

    {
      "id": "/subscriptions/xxx/resourceGroups/xxx/providers/Microsoft.Automation/automationAccounts/xxx/jobs/xxx",
      "name": "xxx",
      "properties": {
        "status": "Failed",
        "error": {
          "code": "RunbookExecutionFailure",
          "message": "Runbook执行过程中抛出异常",
          "details": [
            {
              "code": "ScriptException",
              "message": "第12行代码出现空引用异常"
            }
          ]
        },
        // 其他作业属性(比如启动时间、结束时间等)
      }
    }
    
  • 几个关键注意点

    • 确保你的请求账号拥有Microsoft.Automation/automationAccounts/jobs/read权限,否则会返回权限不足的错误。
    • 只有当作业状态为Failed或因错误触发的Stopped时,ErrorResponse才会有值;如果作业处于Running或Completed状态,这个字段会是null。
    • 你可以先通过这个API判断作业状态,再决定是否读取错误信息,或者直接解析error字段是否存在来处理。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.14 06:50:09