AWS Systems Manager Incident Manager不再向新客户开放。现有客户可以继续正常使用该服务。有关更多信息,请参阅 AWS Systems Manager Incident Manager可用性变更。
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
导出事件管理器数据
本主题介绍如何使用 Python 脚本从中 AWS Systems Manager Incident Manager导出事件记录和事后分析。该脚本将数据导出到结构化的 JSON 文件以供进一步分析或存档。
你可以导出的内容
该脚本导出以下数据:
-
完整的事件记录,包括:
-
时间轴事件
-
相关术语
-
互动
-
自动化执行
-
安全发现
-
标记
-
-
来自 Systems Manager 的事后分析文档
先决条件
开始之前,请确保您已具备以下条件:
-
已安装 Python 3.7 或更高版本
-
AWS CLI 使用适当的凭据进行配置
-
安装了以下 Python 软件包:
pip install boto3 python-dateutil
所需的 IAM 权限
要使用此脚本,请确保您具有以下权限:
Systems Manager 事件权限
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm-incidents:ListIncidentRecords", "ssm-incidents:GetIncidentRecord", "ssm-incidents:ListTimelineEvents", "ssm-incidents:GetTimelineEvent", "ssm-incidents:ListRelatedItems", "ssm-incidents:ListEngagements", "ssm-incidents:GetEngagement", "ssm-incidents:BatchGetIncidentFindings", "ssm-incidents:ListTagsForResource" ], "Resource": "*" } ] }
Systems Manager 权限
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:ListDocuments", "ssm:GetDocument", "ssm:GetAutomationExecution" ], "Resource": "*" } ] }
出口结构
该脚本为导出的数据创建以下目录结构:
incident_manager_export_YYYYMMDD_HHMMSS/ ├── incident_records/ │ ├── 20250309_102129_IAD_Service_A_Lambda_High_Latency.json │ ├── 20250314_114820_SecurityFinding_SecurityHubFindings.json │ └── ... └── post_incident_analyses/ ├── 20250310_143022_Root_Cause_Analysis_Service_A.json ├── 20250315_091545_Security_Incident_Review.json └── ...
运行导出脚本
基本用法
提供了事件管理器数据导出脚本here。请下载脚本并按照以下说明运行脚本。
要使用默认设置运行脚本,请执行以下操作:
python3 export-incident-manager-data.py
可用选项
您可以使用以下命令行选项自定义导出:
| 选项 | 描述 | 默认 |
|---|---|---|
--region |
AWS 区域 | us-east-1 |
--profile |
AWS 个人资料名称 | 默认配置文件 |
--verbose, -v |
启用详细日志 | FALSE |
--limit |
要导出的最大事件数 | 无限制 |
--timeline-events-limit |
每个事件的最大时间轴事件数 | 100 |
--timeline-details-limit |
每个事件的最大时间轴事件详情 | 100 |
--related-items-limit |
每次事件的相关物品上限 | 50 |
--engagements-limit |
每次事件的最大参与度 | 20 |
--analysis-docs-limit |
要导出的分析文档的最大数量 | 50 |
示例
使用自定义配置文件从特定区域导出:
python3 export-incident-manager-data.py --region us-east-1 --profile my-aws-profile
使用详细日志和测试限制进行导出:
python3 export-incident-manager-data.py --verbose --limit 5 --timeline-events-limit 10
以保守的限制导出大型数据集:
python3 export-incident-manager-data.py --timeline-events-limit 50 --timeline-details-limit 25
输出文件结构
事件记录 JSON 结构
每个事件记录文件都包含以下结构:
{ "incident_record": { // Complete incident record from get-incident-record }, "incident_summary": { // Incident summary from list-incident-records }, "incident_source_details": { "from_incident_record": {}, "from_incident_summary": {}, "enhanced_details": { "created_by": "arn:aws:sts::...", "source": "aws.ssm-incidents.custom", "source_analysis": { "source_type": "manual", "creation_method": "human_via_console", "automation_involved": false, "human_created": true } } }, "timeline_events": { "detailed_events": [ { "summary": {}, // From list-timeline-events "details": {} // From get-timeline-event } ], "summary_only_events": [], "metadata": { "total_events_found": 45, "events_with_details": 25, "limits_applied": {} } }, "related_items": { "items": [], "metadata": {} }, "engagements": { "engagements": [], "metadata": {} }, "automation_executions": [], "findings": [], "tags": [], "post_incident_analysis": { "analysis_reference": {}, "metadata": {} }, "export_metadata": { "exported_at": "2025-09-18T...", "region": "us-east-*", "incident_arn": "arn:aws:ssm-incidents::..." } }
事后分析 JSON 结构
每个分析文档文件都包含:
{ "document_metadata": { // Document metadata from list-documents }, "document_details": { "Name": "037fc5dd-cd86-49bb-9c3d-15720e78798e", "Content": "...", // Full JSON content "DocumentType": "ProblemAnalysis", "CreatedDate": 1234567890, "ReviewStatus": "APPROVED", "AttachmentsContent": [], // ... other fields from get-document }, "export_metadata": { "exported_at": "2025-09-18T...", "region": "us-east-*", "document_name": "..." } }