Linuxでシェルスクリプトを共有して、MySQLのマスタースレーブ状態を監視し、エンタープライズWeChatロボットと連携してアラームを鳴らす
#!/bin/bash # ソース /etc/profile PATH をエクスポートします。"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" SLAVE_IP=`ip add | grep inet | grep brd | awk -F / '{print $1}' | awk -F " " '{print $2}' | awk 'NR==1'` USER=モニター パスワード=xxxxxx TIME=`日付` WHEREIS_MYSQL = /opt/mysql/bin/mysql WEBHOOK='https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=bb09197b-5ff6-4928-9872-xxxxxx' wx(){ cat > $0.msg << EOF curl '$WEBHOOK' \ -H 'コンテンツタイプ: application/json' \ -d ' { "メッセージタイプ": "テキスト", "文章": { "コンテンツ": "$1", } }' 終了 sh $0.msg && rm -rf $0.msg } チェック_Mysql_スレーブ() { $WHEREIS_MYSQL -u$USER -p$PASSWORD -h$SLAVE_IP -e "select version();" >/dev/null 2>&1 [ $? -ne 0 ]の場合; echo "Mysql は $DATE に停止されました" >> /data/mysql/check.log ERROR="エラー:Mysql-$SLAVE_IP は接続できません\n$TIME" wx "$エラー" それ以外 #echo "1" >> /data/mysql/check.log IO_SQL_STATUS=`$WHEREIS_MYSQL -u$USER -p$PASSWORD -h$SLAVE_IP -e "スレーブステータスを表示 \G" 2>/dev/null | awk '/Slave_.*_Running:/{print $1$2}'` $IO_SQL_STATUS の i に対して、 スレッドステータス名=${i%:*} スレッドステータス=${i#*:} [ "$THREAD_STATUS" != "Yes" ] の場合; STATUS="エラー:Mysql-$SLAVE_IP $THREAD_STATUS_NAME のステータスは $THREAD_STATUS です!\n$TIME" echo "$STATUS" >> /data/mysql/check.log wx "$ステータス" フィ 終わり フィ } チェック_Mysql_スレーブ 最終的なアラーム効果は次のとおりです。 上記は、MySQL のマスタースレーブ状態を監視するためのシェルスクリプトの詳細です。MySQL のマスタースレーブ状態監視の詳細については、123WORDPRESS.COM の他の関連記事に注目してください。 以下もご興味があるかもしれません:
|
>>: Dockerはローカルディレクトリとデータボリュームコンテナ操作をマウントします
導入あなたも面接でこれに遭遇したことがあるはずです。トランザクションの分離レベルについてお話ししまし...
この記事では主に、CSS3 フレックスレイアウトを使用して要素を均等に配置する方法を紹介します。自分...
Web ページ エンコーディングは英語では web page encoding と翻訳され、Web ...
前回は、Explain 実行プランの表示、インデックスの分析など、MySQL での SQL クエリの...
目次1. 最も適切なフィールド属性を選択する2. フィールドをNOT NULLに設定してみる3. サ...
1. サーバーのセットアップリモート リポジトリは実際にはローカル リポジトリと何ら変わりなく、純粋...
目次序文グローバルロックテーブルロックテーブルロックメタデータ ロック (MDL ロック)要約する参...
テキストシャドウテキストに影を追加します。テキストとテキスト装飾に複数のシャドウを追加することができ...
1. ツールディレクトリのファイル構造 [root@www tools]# ツリーツール/ ツール/...
<iframe src=”test.jsp” width=”100″ height=”50″ ...
目次ブール型数値型文字列型文字列と数値を連結する未定義およびnull配列型タプル型列挙型あらゆるタイ...
コードをコピーコードは次のとおりです。 <div id="名前"> ...
HTML はタグと属性で構成されており、これらを組み合わせてブラウザにページの表示方法を指示します。...
ユーザーの権限に応じて異なるメニュー ページを表示します。知識ポイントルートガード(事前ガードを使用...
目次1. マップは任意のタイプのキーを受け入れます2. マップにはキー名に関する制限はありません3....