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

如何通过API或CloudWatch监控Amazon QuickSight数据集的SPICE导入时长?

解决Amazon QuickSight SPICE导入耗时追踪问题

一、通过API计算导入时长

describe_ingestion接口返回的字段里包含可用于计算耗时的时间戳:

  • 调用该接口后,从IngestionStatusDetail中提取CreatedTime(任务创建时间)、CompletedTime(成功完成时间)或FailedTime(失败时间),用结束时间减去创建时间即可得到实际耗时。
  • 批量处理流程:先用list_ingestions获取目标数据集的所有导入任务ARN,再逐个调用describe_ingestion提取时间戳。示例AWS CLI命令:
    aws quicksight list-ingestions --aws-account-id <你的账号ID> --data-set-id <数据集ID>
    aws quicksight describe-ingestion --aws-account-id <你的账号ID> --data-set-id <数据集ID> --ingestion-id <导入任务ID>
    
    可以用Python等脚本批量提取时间戳并计算时间差,排序后找出耗时最长的数据集。

二、通过CloudWatch追踪导入耗时

1. CloudWatch指标

QuickSight会向CloudWatch推送SPICE导入相关指标,在CloudWatch控制台>指标>QuickSight>SPICE下可找到:

  • IngestionLatency:导入任务的总耗时(单位:秒)
  • 按数据集维度筛选该指标,能查看每个数据集的导入耗时趋势,定位持续耗时较长的对象。

2. CloudWatch日志

先在QuickSight控制台的管理>账户设置>日志记录中开启日志功能,导入任务的详细日志会发送到CloudWatch日志组aws-quicksight。日志包含任务的开始、结束时间,可通过以下方式分析:

  • 按数据集名称、导入任务ID过滤日志,手动提取时间戳计算总耗时。
  • 用CloudWatch Insights编写查询批量分析:
    fields @timestamp, datasetId, ingestionId, status
    | filter eventType = "INGESTION"
    | stats min(@timestamp) as startTime, max(@timestamp) as endTime by datasetId, ingestionId
    | calculate duration = endTime - startTime
    | sort duration desc
    

三、变通方案

  • 手动触发大数据集的导入操作,记录开始和结束时间,对比得出相对耗时。
  • 查看QuickSight控制台的数据集>刷新历史,这里会显示每个导入任务的状态和大致耗时,可作为初步判断依据。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 22:12:34