国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

ElastAlert通過飛書機器人發(fā)送報警通知

這篇具有很好參考價值的文章主要介紹了ElastAlert通過飛書機器人發(fā)送報警通知。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

前言

公司采用ELK架構搜集業(yè)務系統(tǒng)的運行日志,以前開發(fā)人員只有在業(yè)務出現(xiàn)問題的時候,才會去kibana上進行日志搜索操作,每次都是被用戶告知系統(tǒng)出問題了,這簡直是被啪啪打臉~

于是痛定思痛,決定主動出擊,查閱了許多資料,發(fā)現(xiàn)ElastAlert這個服務能夠對elasticsearch的索引按條件進行監(jiān)控,并在匹配設置的條件時自動觸發(fā)告警,于是決定采用ElastAlert。

重新build ElastAlert2鏡像

由于官方的鏡像中不包含飛書通知方式,因此我們需要重新打包鏡像;
分別下載ElastAlert2和elastalert-feishu-plugin源碼

源碼下載地址:
https://github.com/jertel/elastalert2
https://github.com/gpYang/elastalert-feishu-plugin

拷貝elastalert-feishu-plugin中的elastalert_modules目錄到ElastAlert2的根目錄下,目錄結構如圖:
ElastAlert通過飛書機器人發(fā)送報警通知,雜貨記錄,elastalert,elasticsearch
切換到ElastAlert2目錄下,編寫Dockerfile文件

FROM python:3-slim-buster as builder

LABEL description="ElastAlert 2 Official Image"
LABEL maintainer="Jason Ertel"

COPY . /tmp/elastalert

RUN mkdir -p /opt/elastalert && \
cd /tmp/elastalert && \
pip install setuptools wheel && \
python setup.py sdist bdist_wheel

FROM python:3-slim-buster
ARG GID=1000
ARG UID=1000
ARG USERNAME=elastalert
COPY --from=builder /tmp/elastalert/dist/*.tar.gz /tmp/

RUN apt update && apt -y upgrade && \
	apt -y install jq curl gcc libffi-dev && \
	rm -rf /var/lib/apt/lists/* && \
	pip install /tmp/*.tar.gz && \
	rm -rf /tmp/* && \
	apt -y remove gcc libffi-dev && \
	apt -y autoremove && \
	mkdir -p /opt/elastalert && \
	mkdir -p /usr/local/lib/python3.10/site-packages/elastalert/elastalert_modules && \
	echo "#!/bin/sh" >> /opt/elastalert/run.sh && \
	echo "set -e" >> /opt/elastalert/run.sh && \
 	echo "elastalert-create-index --config /opt/elastalert/config.yaml" \
        >> /opt/elastalert/run.sh && \
	echo "elastalert --config /opt/elastalert/config.yaml \"\$@\"" \
    	>> /opt/elastalert/run.sh && \
	chmod +x /opt/elastalert/run.sh && \
	groupadd -g ${GID} ${USERNAME} && \
	useradd -u ${UID} -g ${GID} -M -b /opt -s /sbin/nologin \
    	-c "ElastAlert 2 User" ${USERNAME}
	COPY ./elastalert_modules/feishu_alert.py /usr/local/lib/python3.10/site-packages/elastalert/elastalert_modules/
	COPY ./elastalert_modules/__init__.py /usr/local/lib/python3.10/site-packages/elastalert/elastalert_modules/
	USER ${USERNAME}
	ENV TZ ""Asia/Shanghai""

WORKDIR /opt/elastalert
ENTRYPOINT ["/opt/elastalert/run.sh"]

構建鏡像

docker build -t elastalertfs:1.0 . 

我們在物理機上創(chuàng)建/data/elastalertfs目錄,存放配置文件和報警規(guī)則目錄及文件
在/data/elastalertfs下編寫elastalert的配置文件config.yaml

#指定告警文件存放目錄
rules_folder: /opt/elastalert/rules

#ElastAlert查詢Elasticsearch的頻率,這個單位可以是幾周到幾秒不等
run_every:
	minutes: 1

#ElastAlert將緩沖最近的一段時間的結果,以防某些日志源不是實時的
buffer_time:
	minutes: 30

#Elasticsearch主機
es_host: 192.168.105.147

#Elasticsearch端口
es_port: 9200

#es_host上的索引,用于元數(shù)據(jù)存儲。這可以是一個未映射的索引,但建議你運行。設置一個映射
writeback_index: elastalert_status

#如果一個警報因某種原因而失敗,ElastAlert將重試,直到這個時間段過后
alert_time_limit:
	days: 2

在/data/elastalertfs下創(chuàng)建rules目錄,在目錄內(nèi)創(chuàng)建報警規(guī)則文件xxx-xxx_error.yaml,可以在該目錄下創(chuàng)建多個報警規(guī)則文件,注意修改index名稱、過濾條件、飛書機器人botid等;

name: "niu_cloud_rule"
type: "any"			// 有多種類型,不同的類型配置項有不同
index: "niu-cloud-logs-*"
is_enabled: true

#時間觸發(fā)的次數(shù)
#num_events: 1

#和num_events參數(shù)關聯(lián),1分鐘內(nèi)出現(xiàn)1次會報警
#timeframe:
#  minutes: 1

#同一規(guī)則的兩次警報之間的最短時間。在此時間內(nèi)發(fā)生的任何警報都將被丟棄。默認值為一分鐘。
#realert:
#  minutes: 0

#terms_size: 50

use_strftime_index: true

filter:
- query:
	query_string:
  	query: "level.keyword : ERROR AND msg : java*Exception"   //錯誤級別是ERROR并且msg字段包含java開頭Exception結尾的內(nèi)容就匹配成功,elastalert就會推送報警
  	
include: ["@timestamp","_index", "module", "level", "msg"]	// 這里是es索引中的字段,下邊報警模板會使用

alert:
- "elastalert_modules.feishu_alert.FeishuAlert"

# 飛書機器人接口地址
feishualert_url: "https://open.feishu.cn/open-apis/bot/v2/hook/"

# 飛書機器人id
feishualert_botid: "xxxxxx-xxx-xxxx-xxxx-xxxxxxxxxxx"

# 告警標題
feishualert_title: "niu-cloud業(yè)務ERROR異常"

# 這個時間段內(nèi)的匹配將不告警,適用于某些時間段請求低谷避免誤報警
#feishualert_skip:
#  start: "01:00:00"
#  end: "08:00:00"

# 告警內(nèi)容,使用{}可匹配matches
feishualert_body:
"
【告警主題】: {feishualert_title}\n
【告警時間】: {feishualert_time}\n
【告警模塊】: {module}\n
【業(yè)務索引】: {_index}\n
【時間戳】: {@timestamp}\n
【日志級別】: {level}\n
【錯誤日志】: {msg}
"

docker方式運行并掛載配置目錄

docker run -d --restart=always --name elastalertfs -v /data/elastalertfs/config.yaml:/opt/elastalert/config.yaml -v /data/elastalertfs/rules:/opt/elastalert/rules -v /etc/localtime:/etc/localtime elastalertfs:v1.0

當elastalert監(jiān)控es匹配到規(guī)則中配置的規(guī)則是就會自動向飛書推送報警消息
ElastAlert通過飛書機器人發(fā)送報警通知,雜貨記錄,elastalert,elasticsearch文章來源地址http://www.zghlxwxcb.cn/news/detail-728790.html

到了這里,關于ElastAlert通過飛書機器人發(fā)送報警通知的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內(nèi)容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 使用飛書自定義機器人發(fā)送消息

    使用飛書自定義機器人發(fā)送消息

    使用飛書機器人可以很方便的獲取自動化任務的反饋: 在群里創(chuàng)建一個機器人: 記住下面的 webhook地址,這個是標識機器人的唯一ID,比如它的webhook地址是: \\\"https://open.feishu.cn/open-apis/bot/v2/hook/xxxxxxx-ab01-4427-xxxxx-xxxxx\\\" 然后創(chuàng)建程序: 發(fā)送之后的效果如下:

    2024年02月03日
    瀏覽(24)
  • python調(diào)用飛書機器人發(fā)送文件

    python調(diào)用飛書機器人發(fā)送文件

    當前飛書webhook機器人還不支持發(fā)送文件類型的群消息,可以申請創(chuàng)建一個機器人應用來實現(xiàn)群發(fā)送文件消息。 創(chuàng)建機器人后,需要開通一系列權限,然后發(fā)布。由管理員審核通過后,才可使用。 包括如下的權限,可以獲取群的chat_id。 開通權限發(fā)布應用后,可以取到兩個重

    2024年02月06日
    瀏覽(44)
  • 【Postman】調(diào)用飛書機器人接口發(fā)送消息

    【Postman】調(diào)用飛書機器人接口發(fā)送消息

    1、進入飛書,新建一個群組,添加機器人 2、點擊該機器人,復制webhook地址 3、打開postman,在url中輸入該webhook地址,輸入需要請求的json內(nèi)容,點擊發(fā)送 內(nèi)容例如: 4、飛書就會收到對應的消息推送了 5、請求內(nèi)容的格式參見飛書機器人文檔 自定義機器人指南

    2024年02月13日
    瀏覽(21)
  • 企業(yè)微信、飛書、釘釘機器人消息發(fā)送工具類

    其實你也可以使用RestTemplate,我這里主要是用到了webflux框架,所以需要實例化客戶端請求對象

    2024年02月10日
    瀏覽(25)
  • linux+Jenkins+飛書機器人發(fā)送通知(帶簽名)

    linux+Jenkins+飛書機器人發(fā)送通知(帶簽名)

    自定義機器人使用指南飛書官網(wǎng)https://open.feishu.cn/document/client-docs/bot-v3/add-custom-bot 我這個設置了簽名的,具體怎么設置簽名可以查看飛書官方文檔 可以看到上傳去是沒有執(zhí)行權限的,一定要記得叫上執(zhí)行權限 chmod +x sendMsg.py 最后一個參數(shù)標識 0 開始構建 1 構建完成 /opt/java/scri

    2024年02月15日
    瀏覽(57)
  • 【Jenkins】+【飛書機器人】發(fā)送通知(帶簽名)【Linux】

    【Jenkins】+【飛書機器人】發(fā)送通知(帶簽名)【Linux】

    自定義機器人使用指南飛書官網(wǎng)https://open.feishu.cn/document/client-docs/bot-v3/add-custom-bot 我這個設置了簽名的,具體怎么設置簽名可以查看飛書官方文檔 可以看到上傳去是沒有執(zhí)行權限的,一定要記得叫上執(zhí)行權限 chmod +x sendMsg.py 最后一個參數(shù)標識 0 開始構建 1 構建完成 /opt/java/scri

    2024年02月13日
    瀏覽(85)
  • 【Linux】+【Jenkins】+【飛書機器人】發(fā)送通知(帶簽名)

    【Linux】+【Jenkins】+【飛書機器人】發(fā)送通知(帶簽名)

    自定義機器人使用指南飛書官網(wǎng)https://open.feishu.cn/document/client-docs/bot-v3/add-custom-bot 我這個設置了簽名的,具體怎么設置簽名可以查看飛書官方文檔 可以看到上傳去是沒有執(zhí)行權限的,一定要記得叫上執(zhí)行權限 chmod +x sendMsg.py 最后一個參數(shù)標識 0 開始構建 1 構建完成 /opt/java/scri

    2024年02月14日
    瀏覽(63)
  • Jenkins+Allure測試報告+飛書機器人發(fā)送通知

    Jenkins+Allure測試報告+飛書機器人發(fā)送通知

    本篇講述在jenkins構建成功后,如何生成測試報告,以及推送飛書(因為我公司用的是飛書,所以是發(fā)送到飛書機器人)。 本次實踐搞了一天,踩了一些坑,其中有2個坑可參考如下: 1、關于jenkins生成allure報告是空的:https://blog.csdn.net/qq_37159446/article/details/122233467 2、如遇到構

    2024年02月04日
    瀏覽(31)
  • php對接飛書自定義機器人發(fā)送消息功能

    php對接飛書自定義機器人發(fā)送消息功能

    今天收到一個需求,需要定時去監(jiān)控業(yè)務是否正常穩(wěn)定,并將錯誤信息發(fā)送到飛書,之前接入過釘釘機器人都比較順利,但是今天接入飛書居然卡了半天,特此分享給大家,避免踩坑 1,首先創(chuàng)建飛書機器人 2.創(chuàng)建完成之后,獲取機器人對應的 webhook 地址 格式如下: 3.下面提

    2024年04月09日
    瀏覽(84)
  • Grafana無法發(fā)送告警消息的飛書webhook(機器人)

    Grafana無法發(fā)送告警消息的飛書webhook(機器人)

    Grafana無法向飛書機器人發(fā)送報警消息,實測使用Grafana自帶的webhook也不好使,對于用飛書辦公的程序猿非常不便,后來發(fā)現(xiàn)一個報警神器,開源免費,關鍵是好用 PrometheusAlert PrometheusAlert是一個即裝即用的程序,非常好用,具體步驟如下: 進入模板頁面 找到grafana-fs進入 測試

    2024年02月03日
    瀏覽(18)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包