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

Azure工作簿:通过ARM数据源传递自定义时间范围参数失败

解决Azure工作簿ARM数据源传递时间范围参数失败的问题

1. 匹配参数格式与ARM API要求

Azure成本管理API的时间范围参数(如timePeriod.start和timePeriod.end)要求为ISO 8601格式字符串(示例:2024-01-01T00:00:00Z)。请确认:

  • 工作簿参数类型选择Time Range或DateTime,避免用自定义文本输入
  • 若使用Time Range参数,需通过{TimeRange:start}和{TimeRange:end}提取对应时间字符串

2. 修正ARM请求中的参数引用语法

ARM数据源的JSON Body里必须使用工作簿的参数替换语法,且保证引号包裹正确:

错误示例(直接写参数名):

{
  "type": "ActualCost",
  "timePeriod": {
    "start": TimeRangeStart,
    "end": TimeRangeEnd
  }
}

正确示例(参数语法+引号包裹):

{
  "type": "ActualCost",
  "timePeriod": {
    "start": "{TimeRange:start}",
    "end": "{TimeRange:end}"
  }
}

若为自定义DateTime参数(如CustomStart),引用格式为"{CustomStart}"

3. 处理时区一致性问题

Azure成本API默认使用UTC时间,需确保参数传递UTC格式字符串:

  • 在参数设置中开启Convert to UTC选项(针对DateTime/Time Range类型)
  • 或通过工作簿函数手动转换:"{TimeRange:start:utc}"

4. 验证API版本与请求结构

确保使用最新的成本管理API版本(如2023-08-01),避免因版本兼容问题导致参数解析失败:

{
  "api-version": "2023-08-01",
  "type": "ActualCost",
  "timePeriod": {
    "start": "{TimeRange:start}",
    "end": "{TimeRange:end}"
  }
}

5. 调试参数实际传递值

在工作簿中添加文本组件,输出参数实际值以验证格式正确性:

  • 文本组件内容:Start Time: {TimeRange:start}、End Time: {TimeRange:end}
  • 运行工作簿,检查输出的时间字符串是否符合ISO 8601标准

6. 避免参数名与ARM关键字冲突

不要将参数命名为start、end等ARM请求关键字,防止替换时出现歧义。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 17:50:43