要获得与亚马逊 Timestream 类似的功能 LiveAnalytics,可以考虑适用于 InfluxDB 的亚马逊 Timestream。适用于 InfluxDB 的 Amazon Timestream 提供简化的数据摄取和个位数毫秒级的查询响应时间,以实现实时分析。点击此处了解更多信息。
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
计划查询错误报告
本部分介绍运行计划查询遇到错误时,适用于 LiveAnalytics 的 Timestream 生成的错误报告的位置、格式和原因。
计划查询错误报告原因
对于可恢复错误,会生成错误报告。对于不可恢复错误,不会生成错误报告。当遇到不可恢复错误时,适用于 LiveAnalytics 的 Timestream 可自动禁用计划查询。这些包括:
-
AssumeRole失败 -
指定客户托管的 KMS 密钥后,与 KMS 通信过程中遇到的任何 4xx 错误
-
运行计划查询时遇到的任何 4xx 错误
-
摄取查询结果过程中遇到的任何 4xx 错误
对于不可恢复错误,适用于 LiveAnalytics 的 Timestream 会发送失败通知,其中包含不可恢复错误的消息。还会发送一条更新通知,表示计划查询已禁用。
计划查询错误报告位置
计划查询错误报告位置遵循以下命名规范:
s3://customer-bucket/customer-prefix/
以下是示例计划查询 ARN:
arn:aws:timestream:us-east-1:000000000000:scheduled-query/test-query-hd734tegrgfd
s3://customer-bucket/customer-prefix/test-query-hd734tegrgfd/<InvocationTime>/<Auto or Manual>/<Actual Trigger Time>
自动表示适用于 LiveAnalytics 的 Timestream 自动安排的计划查询,手动表示用户通过适用于 LiveAnalytics 的 Amazon Timestream 查询中的 ExecuteScheduledQuery API 操作手动触发的计划查询。有关 ExecuteScheduledQuery 的更多信息,请参阅 ExecuteScheduledQuery。
计划查询错误报告格式
错误报告使用以下 JSON 格式:
{ "reportId": <String>, // A unique string ID for all error reports belonging to a particular scheduled query run "errors": [ <Error>, ... ], // One or more errors }
计划查询错误类型
Error 对象分为三种类型:
-
记录摄取错误
{ "reason": <String>, // The error message String "records": [ <Record>, ... ], // One or more rejected records ) } -
行解析和验证错误
{ "reason": <String>, // The error message String "rawLine": <String>, // [Optional] The raw line String that is being parsed into record(s) to be ingested. This line has encountered the above-mentioned parse error. } -
一般性错误
{ "reason": <String>, // The error message }
计划查询错误报告示例
以下是由于摄取错误而生成的错误报告示例。
{ "reportId": "C9494AABE012D1FBC162A67EA2C18255", "errors": [ { "reason": "The record timestamp is outside the time range [2021-11-12T14:18:13.354Z, 2021-11-12T16:58:13.354Z) of the memory store.", "records": [ { "dimensions": [ { "name": "dim0", "value": "d0_1", "dimensionValueType": null }, { "name": "dim1", "value": "d1_1", "dimensionValueType": null } ], "measureName": "random_measure_value", "measureValue": "3.141592653589793", "measureValues": null, "measureValueType": "DOUBLE", "time": "1637166175635000000", "timeUnit": "NANOSECONDS", "version": null }, { "dimensions": [ { "name": "dim0", "value": "d0_2", "dimensionValueType": null }, { "name": "dim1", "value": "d1_2", "dimensionValueType": null } ], "measureName": "random_measure_value", "measureValue": "6.283185307179586", "measureValues": null, "measureValueType": "DOUBLE", "time": "1637166175636000000", "timeUnit": "NANOSECONDS", "version": null }, { "dimensions": [ { "name": "dim0", "value": "d0_3", "dimensionValueType": null }, { "name": "dim1", "value": "d1_3", "dimensionValueType": null } ], "measureName": "random_measure_value", "measureValue": "9.42477796076938", "measureValues": null, "measureValueType": "DOUBLE", "time": "1637166175637000000", "timeUnit": "NANOSECONDS", "version": null }, { "dimensions": [ { "name": "dim0", "value": "d0_4", "dimensionValueType": null }, { "name": "dim1", "value": "d1_4", "dimensionValueType": null } ], "measureName": "random_measure_value", "measureValue": "12.566370614359172", "measureValues": null, "measureValueType": "DOUBLE", "time": "1637166175638000000", "timeUnit": "NANOSECONDS", "version": null } ] } ] }