你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Azure 时序见解 Gen2 查询 API

概述

查询 API 由三个 REST API 组成,每个 API 用于事件系列聚合

查询 API 通过具有可选分页的 HTTP GET 请求返回指定时间范围内的事件架构和事件计数。 系列聚合系列 信息也通过具有可选分页的 GET 操作公开。

API 说明
获取事件 API 返回与搜索范围和谓词匹配的原始事件列表。
获取系列 API 通过使用通过模型中定义或内联提供的变量在网络上记录的数据,从捕获的事件中查询和检索时序见解数据。
聚合系列 API 通过使用聚合或示例函数聚合记录的数据,从捕获的事件中查询和检索时序见解数据。

API 还支持通过 HTTP 请求 JSON 正文指定的 各种自定义操作查询定义 可用于常见操作。

重要

错误响应

如果查询执行失败,JSON 响应有效负载将包含符合以下结构的错误响应:

{
    "error" : {
        "code" : "...",
        "message" : "...",
        "innerError" : {  
            "code" : "...",
            "message" : "...",
        }
    }
}

此处, innerError 是可选的。 除了请求格式错误等基本错误外,还返回以下错误:

Http 状态代码 错误代码 示例错误消息 可能的 innerError 代码
400 InvalidApiVersion 不支持 API 版本“2016”。 支持的版本为“2016-12-12”、“2018-11-01-preview”。 -
400 InvalidUrl 无法分析请求 URL“/a/b”。 -
400 InvalidInput 给定的查询“aggregate”无效。 支持的查询包括“getEvents”、“getSeries”、“aggregateSeries”。 InvalidQueryType
400 InvalidInput “projectedVariables.temperature.value”中的“$event.temperature.Double > 0”时序表达式不是有效的属性引用表达式。 InvalidPropertyReferenceExpression
400 InvalidInput “projectedVariables.temperature.filter”中的“$event.temperature.Double”时序表达式无效。 它只能是返回布尔值的谓词表达式。 InvalidPredicateExpression
400 InvalidInput “projectedVariables.temperature.aggregation”中的“$event.temperature.Double”时序表达式无效。 它不包含聚合表达式。 InvalidAggregateExpression
400 InvalidInput “projectedVariables.temperature.value”中的“$event.temperature.Double > 0”时序表达式不是类型为“numeric”的有效值表达式。 InvalidValueExpression
400 InvalidInput 不应指定“projectedVariables.temperature.value”中的值时序表达式,或者对于类型为“aggregate”的变量,应为 null。 ValueExpressionShouldNotBeSpecified
400 InvalidInput 应为变量类型“numeric”指定“projectedVariables.temperature.value”中的值时序表达式。 ValueExpressionShouldBeSpecified
400 InvalidInput 变量类型“aggregate”对于“projectedVariables.temperature.aggregation”中的表达式“min ($value) ”无效。 InvalidVariableKind
400 InvalidInput “interval”中的时间跨度“00.00:01”不是有效的 ISO8601 时间跨度格式。 InvalidTimeSpanFormat
400 InvalidInput 找不到 timeSeriesId 为“[”ABC123“]” 的实例。 InstanceNotFound
400 InvalidInput 找不到名为“timeSeriesName”的实例。 InstanceNotFound
400 InvalidInput 无法删除 timeSeriesId 为“[”ABC321“]”的实例。 已引入与此时序 ID 关联的事件。 CannotDeleteInstance
400 InvalidInput ID 为“5e19f688-83fb-4aee-8321-5c123ed016b7”的环境不支持时序查询 API。 TimeSeriesQueryNotSupported
400 InvalidInput 在类型或内联变量定义中找不到名为“temperature”的投影变量。 ProjectedVariableNotFound
400 InvalidInput 无法更新 ID 为“7e19g688-83fb-4aee-8321-5c123ed016b7”且名称为“ABC123”的类型。 ID 为“6e19g688-83fb-4aee-8321-5c123ed016b7”的类型已使用此名称。 NameAlreadyExists
400 InvalidInput 无法更新 ID 为“4e19g688-83fb-4aee-8321-7c123ed016b7”且名称为“XYZ123”的层次结构。 ID 为“8e39g688-83fb-4aee-8321-5c123ed016b7”的层次结构已使用此名称。 HierarchyNotDefined
400 InvalidInput 实例数超出了“1,000,000”的限制。 NumberOfInstancesExceededLimit
400 InvalidInput 类型数超出了“1000”的限制。 NumberOfTypesExceededLimit
400 InvalidInput 层次结构数超出了“32”的限制。 NumberOfHierarchiesExceededLimit
400 InvalidInput 实体大小大于允许的最大大小“16,384”。 ObjectSizeExceededLimit
400 InvalidInput 长度为“6”的对象名称“ABC123”超出了允许的最大字符数限制“5”。 NameExceededLimit
408 RequestTimeout 请求在“30”秒后超时, () 。 BatchRequestSizeExceededLimit
503 TooManyRequests 环境“95880732-01b9-44ea-8d2d-4d764dfe1904”的并发请求计数已超出“30”。 EnvRequestLimitExceeded

另请参阅

  • 有关应用程序注册和 Azure Active Directory 编程模型的详细信息,请参阅 面向开发人员的 Azure Active Directory

  • 若要了解请求和身份验证参数,请阅读 身份验证和授权

  • 帮助测试 HTTP 请求和响应的工具包括:

  • 菲德勒 此免费的 Web 调试代理可以截获 REST 请求,因此你可以诊断 HTTP 请求和响应消息。

  • JWT.io。 可以使用此工具在持有者令牌中快速转储声明,然后验证其内容。

  • Postman。 这是一个免费的 HTTP 请求和响应测试工具,用于调试 REST API。

  • 查看 Gen2 文档,详细了解 Azure 时序见解 Gen2