Cloud SIEM运行在Datadog日志管理之上,因此导出“Cloud SIEM日志”意味着导出其背后的日志。使用Logs Search API,通过POST /api/v2/logs/events/search,并提供API密钥和应用程序密钥,沿着光标前进,直到没有下一页;每页最多包含1,000条日志。对于超出索引保留历史的日志,请在S3、GCS或Azure Storage中读取日志档案,或重新激活它们。安全信号是一个单独的API。
Datadog是许多云原生团队已经存储日志的地方,这使其成为调查切片的自然来源。Prime Core为Datadog提供了23,983个检测规则,映射到676个MITRE ATT&CK技术。以下是如何免费导出日志、清理它们,并在LogTotal中进行调查。
开始之前
两个密钥。 Logs Search API需要一个API密钥(DD-API-KEY)和一个应用程序密钥(DD-APPLICATION-KEY)。应用程序密钥必须属于能够读取日志的用户或服务账户,并且如果有范围限制,它需要日志读取访问权限。
您的Datadog站点。 API主机与您的站点相关联:api.datadoghq.com(US1)、api.us3.datadoghq.com、api.us5.datadoghq.com、api.datadoghq.eu、api.ap1.datadoghq.com等。使用与您的登录网址匹配的那个。
保留期。 索引日志在其索引保留期间是可搜索的。较旧的日志仅存在于档案中,如果您进行了设置。
使用Logs Search API导出
DD="https://api.datadoghq.eu"
BODY='{"filter": {"query": "host:web-03 source:sshd", "from": "2026-10-19T00:00:00Z", "to": "2026-10-20T00:00:00Z"}, "page": {"limit": 1000}, "sort": "timestamp"}'
: > dd_web03_1019.jsonl
CURSOR=""
while :; do
REQ=$(echo "$BODY" | jq --arg c "$CURSOR" 'if $c != "" then .page.cursor = $c else . end')
RESP=$(curl -sS -X POST "$DD/api/v2/logs/events/search"
-H "DD-API-KEY: $DD_API_KEY" -H "DD-APPLICATION-KEY: $DD_APP_KEY"
-H 'Content-Type: application/json' -d "$REQ")
echo "$RESP" | jq -c '.data[]' >> dd_web03_1019.jsonl
CURSOR=$(echo "$RESP" | jq -r '.meta.page.after // empty')
[ -z "$CURSOR" ] && break
done
# 仅原始消息
jq -r '.attributes.message' dd_web03_1019.jsonl > dd_web03_1019.log
API速率有限制。对于大窗口,期望会花费一段时间,当您看到429时请退后。
较旧的日志:档案
如果您配置了日志档案,Datadog会将压缩的JSON文件写入您的桶中,按日期和小时组织。下载所需的时间段并解压:
aws s3 cp s3://my-dd-archive/dt=20261019/ ./dd-archive/ --recursive
zcat ./dd-archive/*/*.json.gz > dd_archive_1019.jsonl
在LogTotal中上传、清理并审查
- 上传。 打开 logtotal.com 并将文件拖放进去。
- 清理。
- 审查。
当出现问题时
| 症状 | 可能原因 | Fix |
|---|---|---|
| 403禁止 | 应用程序密钥缺乏日志读取权限 | 使用可以读取日志的用户或服务账户的密钥 |
| 有效密钥,没有数据 | 错误的Datadog站点 | 使用您的站点的API主机 |
| 没有超过几天的记录 | 索引保留期 | 读取档案或重新激活 |
| 429请求过多 | 速率限制 | 等待,然后继续使用相同的光标 |
| 仅有1,000个结果 | 光标没有被跟随 | 循环直到meta.page.after为空 |
FAQ
如何导出Cloud SIEM信号?
信号有它们自己在安全监控API下的端点。对于LogTotal,导出其背后的日志。
Flex Logs怎么样?
Flex层日志在Datadog中是可搜索的,但可能在API中表现不同。