钉钉监控中心的采集如何过滤某些 api 的请求采集?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
在钉钉监控中心的采集过程中,如果需要过滤某些 API 的请求采集,可以通过配置黑白名单的方式实现。以下是详细的配置方法和操作步骤:
黑白名单机制是通过设置规则来决定哪些 API 请求需要被采集或忽略。具体规则如下: - 白名单模式:仅采集符合规则的 API 请求。 - 黑名单模式:忽略符合规则的 API 请求。
默认情况下,系统采用黑名单模式(mode: ignore
),即命中规则的请求不会被上报。
在配置过滤规则之前,需要明确过滤的目标字段。对于 API 请求的过滤,通常使用 apiFilter
参数,其作用是对请求的 URL 进行匹配和过滤。
apiFilter
参数支持以下属性配置: - mode:匹配模式,可选值为: - ignore
:黑名单模式,命中规则的请求不上报。 - match
:白名单模式,命中规则的请求才会上报。 - rules:匹配规则集合,支持以下类型: - 字符串:当请求 URL 包含该字符串时,命中规则。 - 正则表达式:通过正则表达式匹配请求 URL。 - 函数:自定义函数返回 true
表示命中规则,返回 false
表示未命中。 - 数组:多个规则之间为“或”的关系,只要任意一个规则命中,则规则集命中。
以下是一个具体的配置示例,用于过滤某些 API 请求的采集:
{
"apiFilter": {
"mode": "ignore", // 黑名单模式
"rules": [
"/api/v1/ignore-this-endpoint", // 忽略包含该路径的请求
"/api/v2/another-ignore", // 忽略另一个路径
"^/api/test/.*$" // 使用正则表达式忽略以 /api/test/ 开头的请求
]
}
}
如果需要改为白名单模式,可以将 mode
设置为 match
,并仅允许特定的 API 请求被采集:
{
"apiFilter": {
"mode": "match", // 白名单模式
"rules": [
"/api/v1/allow-this-endpoint", // 仅允许包含该路径的请求
"/api/v2/another-allow" // 允许另一个路径
]
}
}
debug: true
),以便验证过滤规则是否生效。除了通过 apiFilter
配置过滤规则外,还可以结合以下功能进一步优化采集策略: - 页面过滤器(pageFilter):用于过滤页面日志,避免无关页面的日志干扰。 - 错误过滤器(errorFilter):用于过滤错误日志,减少无效数据的采集。
通过上述配置,您可以灵活地控制钉钉监控中心对 API 请求的采集范围,从而提升数据采集的效率和准确性。