前の4つの記事では、Prometheusの構造全体、関連サービスの展開、パネルディスプレイ、エンタープライズメールアラートについて詳しく説明しました。この記事では、主にPrometheusのエンタープライズWeChatアラートを構成する方法について説明しました。
企業のWeChatをセットアップする
主な目的は、取得することである企业ID
、部门ID
アプリケーションAgentId
およびアプリケーションをSecret
。
エンタープライズWeChat登録(エンタープライズWeChatアカウントを既にお持ちの場合はスキップしてください)
エンタープライズWeChat登録アドレス:https://work.weixin.qq.com/エンタープライズWeChatの登録に
必要な対応情報を入力します
サブ部門を追加する
エンタープライズWeChatにログイン->連絡先->サブ部門の追加->メンバーの
追加メンバーの追加
部門IDの記録
自作のアプリケーションを作成する
Enterprise WeChatにログイン— >アプリケーション管理— >アプリケーションの作成
アプリケーション名とその他の情報を
入力してアプリケーションを作成しますアプリケーションを作成したら、アプリケーションのAgentIdとシークレットを記録します
会社IDを取得する
Enterprise WeChat-> MyEnterpriseにログインします
Alertmanagerを構成します
Alertmanager構成ファイルを変更します
cat alertmanager.yml
global:
resolve_timeout: 2m
templates:
- '/usr/local/src/alertmanager/wechat.tmpl'
route:
group_by: ['alertname','cluster','service']
group_wait: 10s
group_interval: 10s
repeat_interval: 1h
receiver: 'wechat'
receivers:
- name: 'wechat'
wechat_configs:
- corp_id: 'wwcd70xxxxxx2d836d'
api_url: 'https://qyapi.weixin.qq.com/cgi-bin/'
send_resolved: true
to_party: '2'
agent_id: '1000003'
api_secret: 'zRCRVyxYGd5ej49BxxxxxxPtI9caW53mqNVDxTnRIXM'
WeChatアラートテンプレート
{
{
define "wechat.default.message" }}
{
{
if gt (len .Alerts.Firing) 0 -}}
阿里云 故障告警: #此处自定义
{
{
range .Alerts }}
告警级别:{
{
.Labels.severity }}
告警类型:{
{
.Labels.alertname }}
告警主机: {
{
.Labels.instance }}
告警主题: {
{
.Annotations.summary }}
告警详情: {
{
.Annotations.description }}
⏱ : {
{
(.StartsAt.Add 28800e9).Format "2006-01-02 15:04:05" }}
============
====done====
============
{
{
- end }}
{
{
- end }}
{
{
if gt (len .Alerts.Resolved) 0 -}}
阿里云 故障恢复: #此处自定义
{
{
range .Alerts }}
告警级别:{
{
.Labels.severity }}
告警类型:{
{
.Labels.alertname }}
告警主机: {
{
.Labels.instance }}
告警主题: {
{
.Annotations.summary }}
告警详情: {
{
.Annotations.description }}
⏱ : {
{
(.StartsAt.Add 28800e9).Format "2006-01-02 15:04:05" }}
⏲ : {
{
(.EndsAt.Add 28800e9).Format "2006-01-02 15:04:05" }}
============
====done====
============
{
{
- end }}
{
{
- end }}
{
{
- end }}
Alertmanagerサービスを再起動して、アラームをトリガーします
alertmanager.ymlの設定が正しいかどうかを確認します
cd /usr/local/alertmanager
./amtool check-config alertmanager.yml
Alertmanagerサービスを再起動し、アラートを確認します
ps -ef |grep alertmanager |grep -v grep |awk '{print $2}' | xargs kill -9 #停止Alertmanager服务
nohup ./alertmanager --config.file="alertmanager.yml" --web.listen-address=":9093" >> ./logs/alertmanager.log 2>&1 & #启动Alertmanager服务