跳转到内容
本站为社区维护的非官方中文翻译,与 Cloudflare, Inc. 无关联。本站不提供账户登录,请勿在任何非官方站点输入您的 Cloudflare 账户信息。官方文档:developers.cloudflare.com

故障排除

最后更新 查看 MarkdownAgent 设置

使用本指南解决通过 Cloudflare App for Splunk 分析 Cloudflare Logs ↗ 时的常见问题。

Firewall Events 携带不正确的 _time 值

cloudflare:json sourcetype 下 Firewall Events 数据集的事件携带的 _time 值与事件的实际时间不匹配,并且 splunkd.log 显示类似以下条目:

WARN DateParserVerbose - Failed to parse timestamp.
Defaulting to timestamp of previous event.

原因: 在较早版本的 Cloudflare App for Splunk 中,cloudflare:json sourcetype 从 EdgeStartTimestamp JSON 键提取 _time,该键仅存在于 HTTP 请求日志中。Firewall Events 使用不同的键(Datetime),因此时间戳提取失败,Splunk 会静默回退到最近一次已索引事件的时间戳。

修复: 升级到最新版本的 Cloudflare App for Splunk ↗。当前版本会在 cloudflare:json sourcetype 下解析 EdgeStartTimestamp 和 Datetime。

如果无法立即升级,或维护自定义的 props.conf,请在 indexer 或 heavy forwarder 上将 cloudflare:json stanza 更新为同时匹配这两个键,然后重启 Splunk 服务:

[cloudflare:json]
TRUNCATE = 100000
TIME_PREFIX = "(?:EdgeStartTimestamp|Datetime)"\s*:\s*"
TIME_FORMAT = %Y-%m-%dT%H:%M:%SZ
MAX_TIMESTAMP_LOOKAHEAD = 150

验证: 新索引的 Firewall Events 携带准确的 _time 值,并且 splunkd.log 中不再出现 DateParserVerbose 警告。修复前已索引的事件会保留其原始 _time 值,除非重新索引。

Cloudflare Security (WAF) 仪表板为空

Cloudflare App for Splunk 中的 Cloudflare – Security (WAF) 仪表板可以无错误加载,但所有面板都为空。其他仪表板(Overview、Performance、Reliability)正常填充,即使目标索引中已确认存在 WAF 和安全事件,在搜索栏中直接运行 WAF 面板的底层 SPL 也会返回零结果。

原因: 在较早版本的 Cloudflare App for Splunk 中,WAF 仪表板 SPL 引用了已从 HTTP Requests 数据集中移除 的 Cloudflare 日志字段:

已弃用字段 当前字段
FirewallMatchesRuleIDs{} SecurityRuleIDs
WAFRuleMessage SecurityRuleDescription

当搜索引用所有已索引事件中都不存在的字段时,Splunk 不会引发错误——它会完成搜索并返回零结果,导致每个仪表板面板都为空。

修复: 升级到最新版本的 Cloudflare App for Splunk ↗。当前版本在整个 WAF 仪表板、已保存搜索和宏中引用 SecurityRuleIDs 和 SecurityRuleDescription。

如果维护该应用的自定义分支,请将仪表板 XML、已保存搜索和宏中所有对 FirewallMatchesRuleIDs{} 和 WAFRuleMessage 的引用分别替换为 SecurityRuleIDs 和 SecurityRuleDescription。

验证: 重新加载 Cloudflare – Security (WAF) 仪表板。面板应填充最近的 WAF 和安全事件。类似 index=<your-index> sourcetype=cloudflare:json SecurityRuleIDs=* 的直接搜索也应返回匹配事件。

仍未解决

如果此处未涵盖你的问题:

这篇文档对您有帮助吗?