まず、構成規則
録音のルールと:プロメテウスは、定期的に構成することができ、ルール、および定期的な評価の2種類のサポートアラートルールを。ルールに含まれるプロメテウス、声明のために必要なルールを含むファイルを作成し、そしてによりプロメテウスプロメテウス構成を聞かせてrule_files
ファイルフィールドをロードします。ルールはYAMLを使用してファイル。
SIGHUP
プロメテウスプロセスに送信するには、実行時にルールファイルをリロードすることができます。これは、すべてのルールが正しい形式でファイルときにのみ変更を適用します。
第二に、構文チェックルール
すぐにファイルがプロメテウスサーバを起動せずに構文的に正しいルールであるかどうかを確認するには、のプロメテウスインストールして実行promtool
コマンドラインユーティリティを:
go get github.com/prometheus/prometheus/cmd/promtool
promtool check rules /path/to/example.rules.yml
复制代码
ファイルには、構文チェッカーで有効である場合は、標準出力に出力ルールのテキスト表現を解析され、その後、0
状態出口に戻ります。
構文エラーまたは無効な入力パラメータがある場合、エラーメッセージが標準エラーに出力され、そしてする1
状態出口に戻ります。
第三に、記録ルール
レコードのルールは、あなたが頻繁に事前に計算する計算コストが高いまたは発現を必要とし、時系列の新しいセットとして結果を保存することができます。したがって、あなたが必要とするたびに元の式より通常はるかに高速事前に計算されたクエリの実行結果。これは、インストルメントパネルに特に有用であるが、インストルメントパネルは、すべてのリフレッシュに同じクエリ式を繰り返す必要があります。
記録と警告ルールはルール・グループに存在しています。一定間隔で順番に運用ルールを設定します。
ルール・ファイルの構文は次のとおりです。
groups:
[ - <rule_group> ]
复制代码
簡単な例では、ルールファイルのようになります。
groups:
- name: example
rules:
- record: job:http_inprogress_requests:sum
expr: sum(http_inprogress_requests) by (job)
复制代码
3.1 <rule_group>
# 组的名称。 在文件中必须是唯一的。
name: <string>
# 评估组中的规则的频率。
[ interval: <duration> | default = global.evaluation_interval ]
rules:
[ - <rule> ... ]
复制代码
3.2 <rule>
レコードルールの構文は次のとおりです。
# 要输出的时间序列的名称。 必须是有效的度量标准名称。
record: <string>
# 要评估的PromQL表达式。 每个评估周期都会在当前时间进行评估,并将结果记录为一组新的时间序列,其中度量标准名称由“记录”给出。
expr: <string>
# 在存储结果之前添加或覆盖的标签。
labels:
[ <labelname>: <labelvalue> ]
复制代码
アラートルールの構文は次のとおりです。
# 警报的名称。 必须是有效的度量标准名称。
alert: <string>
# 要评估的PromQL表达式。 每个评估周期都会在当前时间进行评估,并且所有结果时间序列都会成为待处理/触发警报。
expr: <string>
# 警报一旦被退回这段时间就会被视为开启。
# 尚未解雇的警报被认为是未决的。
[ for: <duration> | default = 0s ]
# 为每个警报添加或覆盖的标签。
labels:
[ <labelname>: <tmpl_string> ]
# 要添加到每个警报的注释。
annotations:
[ <labelname>: <tmpl_string> ]
复制代码
第四に、リンク
プロメテウスの公式ウェブサイトのアドレス:prometheus.io/
私のGithub:github.com/Alrights/pr ...
ます。https://juejin.im/post/5d04ab95e51d455a694f9517で再現