TIP
有关提供商配置的任何问题或问题,请加入我们的 Slack 社区。
Keep 中的提供商配置允许您动态设置和管理数据提供商。此功能使您能够配置 Keep 可以交互的各种数据源,例如监控系统、数据库或其他服务。
配置提供商
要配置提供商及其去重规则,我们可以通过环境变量进行配置。有两种方式:
- 使用
KEEP_PROVIDERS环境变量,它可以包含 JSON 字符串或包含提供商配置的 JSON 文件路径。 - 使用
KEEP_PROVIDERS_DIRECTORY环境变量,它包含包含提供商配置的目录路径(通过 YAML 文件配置)。这是推荐的方法。
::: note Keep 不允许同时使用 KEEP_PROVIDERS 和 KEEP_PROVIDERS_DIRECTORY 环境变量。 :::
::: note Keep 可以自动为支持 webhooks 的提供商安装 webhooks。此行为取决于配置和使用的配置方法。 :::
TIP
请注意:去重规则对于提供商分发不是必需的。
使用 KEEP_PROVIDERS 配置提供商
提供商配置 JSON 示例:
{
"keepVictoriaMetrics": {
"type": "victoriametrics",
"authentication": {
"VMAlertHost": "http://localhost",
"VMAlertPort": 1234
},
"install_webhook": true,
"deduplication_rules": {
"deduplication rule name example 1": {
"description": "deduplication rule name example 1",
"fingerprint_fields": ["fingerprint", "source", "service"],
"full_deduplication": true,
"ignore_fields": ["name", "lastReceived"]
},
"deduplication rule name example 2": {
"description": "deduplication rule name example 2",
"fingerprint_fields": ["fingerprint", "source", "service"],
"full_deduplication": false,
}
}
},
"keepClickhouse1": {
"type": "clickhouse",
"authentication": {
"host": "http://localhost",
"port": 1234,
"username": "keep",
"password": "keep",
"database": "keep-db"
}
}
}使用此 KEEP_PROVIDERS 值启动 Keep:
# ENV
KEEP_PROVIDERS={"keepVictoriaMetrics":{"type":"victoriametrics","authentication":{"VMAlertHost":"http://localhost","VMAlertPort": 1234},"install_webhook":true},"keepClickhouse1":{"type":"clickhouse","authentication":{"host":"http://localhost","port":"4321","username":"keep","password":"1234","database":"keepdb"}}}默认情况下,使用 KEEP_PROVIDERS 配置时,会自动为支持 webhooks 的提供商安装 webhooks,除非将 install_webhook 标志设置为 false。
使用 KEEP_PROVIDERS_DIRECTORY 配置提供商
指定包含提供商配置的目录路径:
# ENV
KEEP_PROVIDERS_DIRECTORY=/path/to/providers该目录应包含带提供商配置的 YAML 文件。
提供商配置 YAML 文件示例:
name: keepVictoriaMetrics
type: victoriametrics
authentication:
VMAlertHost: http://localhost
VMAlertPort: 1234
install_webhook: false
deduplication_rules:
deduplication_rule_name_example_1:
description: deduplication rule name example 1
fingerprint_fields:
- fingerprint
- source
- service
full_deduplication: true
ignore_fields:
- name
- lastReceivedinstall_webhook 字段控制 Keep 是否自动为该提供商设置 webhooks。默认情况下,使用 KEEP_PROVIDERS_DIRECTORY 配置时,webhook 安装是禁用的,除非明确设置为 true。
支持的提供商
Keep 支持多种提供商类型。每种提供商类型都有其特定的配置要求。 要查看支持的提供商完整列表及其详细配置选项,请参阅我们全面的提供商文档。
更新已配置的提供商
使用 KEEP_PROVIDERS
可以通过更改 KEEP_PROVIDERS 环境变量来动态更新提供商配置。
每次重启时,Keep 都会读取此环境变量,并确定需要添加或删除哪些提供商。
此过程允许灵活管理数据源,无需手动干预。只需更新 KEEP_PROVIDERS 变量并重启应用程序,即可高效地添加新提供商、删除现有提供商或修改其配置。
高级配置机制:
- Keep 读取
KEEP_PROVIDERS值。 - Keep 检查是否有已配置的提供商不再在
KEEP_PROVIDERS值中,并删除它们。 - Keep 从
KEEP_PROVIDERS值安装所有提供商。
使用 KEEP_PROVIDERS_DIRECTORY
可以通过更改 KEEP_PROVIDERS_DIRECTORY 目录中的 YAML 文件来动态更新提供商配置。
每次重启时,Keep 都会读取 KEEP_PROVIDERS_DIRECTORY 目录中的 YAML 文件,并确定需要添加或删除哪些提供商。
高级配置机制:
- Keep 读取
KEEP_PROVIDERS_DIRECTORY目录中的 YAML 文件。 - Keep 检查是否有已配置的提供商不再在 YAML 文件中,并删除它们。
- Keep 从 YAML 文件安装所有提供商。