私たちは、メールや適切な担当者への他の手段による操作とマルチアラーム通知のメンテナンス前に、どこでも閲覧、いつでも達成することが困難であることを知っています。電話APPの発展に伴い、アラームを送信するために多くのIMソフトウェアが起動します。現在一般的に使用され、我々は、爪に焦点を当てます今日、マイクロおよび爪に手紙を送ることです。グループのロボットは、高度な拡張ネイル基であり、群ロボットは、サードパーティのサービスグループチャット、情報の自動同期に集約することができます。爪ロボット、公式が提供するAPIを使用すると、簡単に適切な受信者にデータを投稿することができます。グループロボットのカスタムプロトコルのサポートへのアクセスは、例えばより多くの可能性を、サポートウェブフック:あなたはステープルグループアラートを達成するために重合することにより、操作や保守アラームロボットをカスタマイズすることができます。
Linuxのシェルスクリプト言語は、システム管理と自動化を達成しなければならないための重要なツールです。シェル巧妙に書かれた言語は、複雑な作業環境に適応し、運用・保守要員の効率を高めることができます。
この記事では、アラーム情報は、シェルスクリプト言語によって達成釘ロボットによって送信される焦点を当てます。
1:ロボットのより多くの情報ベースについて、あなたは学ぶために公式サイトに署名することができます
https://ding-doc.dingtalk.com/doc#/serverapi2/qf2nxq
2.良い名前から自分のロボットを与えます
次のように:
3.コマンドラインツールのカールを使用します
カールは、データが表示され、URLを指定してデータをアップロードまたはダウンロードするためのコマンドラインツールです。カールはc
、クライアント、およびURL、そのURLを表します。
カール契約で使用するために3.1、最もまたはHTTP
各HTTPリクエストに対応する方法を有し、一般的に使用される方法であるGET
、POST
、HEAD
およびPUT
。あなたはcurlコマンドで特定のメソッドを指定しない場合、デフォルトでは使用することがあるGET
方法を。その他の方法については、カールがコマンドで指定することができます。
方法 | オプション |
---|---|
POST |
-d 若しくは-F |
HEAD |
-I |
PUT |
-T |
POST
これは、HTTPサーバーにデータを提出するための方法です。ブラウザでは、形であってもよいデータを記入した後、ブラウザが埋めるために、デフォルトのデータを使用するkey=value
文字列変換の形を。カールでは、我々は、使用することができ-d
たり--data
、特定のデータを指定するオプション。
カールツールに関連付けられた3.2釘付け二つの主なパラメータ
パラメータ(短い形式) | パラメータ(長い形式) | 説明 | 具体的な説明 |
-d | - データ | HTTP POSTデータ(H) | サーバーに指定されたデータを送信します。 |
-H | - ヘッダ | サーバに渡すカスタムヘッダ(H) |
ときに
Content-Typeヘッダが指定されていない場合、デフォルトで |
3.3呼び出し形式(ケース)
カール' https://oapi.dingtalk.com/robot/send?access_token=xxxxxxxx ' \ -H ' :ファイルアプリケーション/ JSONのContent-Type ' \ -d " { "のMsgType": "テキスト"、 " テキスト" :{ 「コンテンツ」:「私は私だ、それは同じ花火ではありません」 } } "
試験中、直接上記のコマンドセットのコマンドラインにコピーし、その後、実際のaccess_tokenはに置き換えXXXXXXXX。
4つの異なるタイプの値下げ
公式サイトでは、マークダウンタイプ、メッセージ(スクリプト)の他の種類の試験例に加えて、シェルで直接証明することができます
テストケースの公式サイトの値下げタイプ
{ "のMsgType": "マークダウン"、 "マークダウン":{ "タイトル": "杭州の天気" + "N- \ ####杭州の天気156xxxx8827 @": "テキスト" 「> 9度、北西の風レベル1、空気、89%相対湿度73である\ N- \ N良い- "+ !"> [スクリーンショット](https://gw.alicdn.com/tfs/TB1ut3xxbsrBKNjSZFpXXcXhFXa-846-786.png)\ N - " + "> ###ポスト### 10:20 [天気](http://www.thinkpage.cn/)\ N-」 }、 "AT ":{ " atMobiles ":[ " 156xxxx8827"、 "189xxxx8325" ]、 "isAtAll" :偽 } }
シェルの実行エラーメッセージでは、エラーメッセージは次のとおりです。
{ " ERRCODE ":40035、" のErrMsg ":" 欠落引数JSON " }
理由が与えられた「テキスト」は、カラムの値に対応する値は、「+」演算子は、中間体を生じさせます
" + "
削除されました。
それはに更新されたコードを実行することができます。
{ " のMsgType ":" マークダウン" 、 " マークダウン" :{ " タイトル":" 杭州の天気" 、 " テキスト":" ####杭州天気156xxxx8827 \ @ n>は9度、北西の風クラス1、良い空気89 、相対湿度73%\ n \ n>! [スクリーンショット](https://gw.alicdn.com/tfs/TB1ut3xxbsrBKNjSZFpXXcXhFXa-846-786.png)\ N> ###### 10 ポイント20は星[日付気象](http://www.thinkpage.cn/)\ N- " }、 " AT " :{ " atMobiles 」。 [ " 156xxxx8827" " 189xxxx8325 " ]、" isAtAll 」:偽 } }
OK実行は、エラーが表示されなくなります。
次の実装:
次のように成功した情報を受信、コンテンツのショットは、以下のとおりです。
ファイルに5.爪ロボットコード、呼び出すことが簡単に作ります
たとえば:VIP QQOrder_ERPクラスタドリフトは、アラームの爪に実行可能ファイルddalarm.shを送信するために呼び出したときに、モニタを作成します。
次のようにメインのコードは次のようになります。
#!/ binに/ bashの ウェブフック = ' https://oapi.dingtalk.com/robot/send?access_token=34XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX ' クラスタ = ' QQOrder_ERP ' ホスト = ` ホスト名 -I | AWK ' {$ 1印刷} ' ' VIP = $ 1 関数SendMsgToDingding(){ カール$ウェブフック -H ' コンテンツタイプ:アプリケーション/ JSON ' -d " { ' MSGTYPE ':' 文字'、 ' テキスト' :{ ' 内容':' クラスタ名:$クラスタ\ n個のアラーム情報を:仮想IP <$ VIP>はノード<$ホスト>、注意してくださいにドリフトしたこと\ N- ' }、 ' AT ' :{ " isAtAll ":trueに } } " } SendMsgToDingding
このテストファイルは、呼び出されたときのパラメータ(VIP)を渡す必要があります。
トリガの実行の場合、以下のとおりです。
電話でのネイル受信したアラーム情報
参考文献:
1.釘打群ロボット
https://ding-doc.dingtalk.com/doc#/serverapi2/krgddi
2.curlガイド
https://www.jianshu.com/p/fc0eb6c60816