Enterprise 技術情報 Enterprise Technical information
外部との連携 KompiraからSlackに通知する
障害発生や処理終了などの通知は、例えばmailto()関数を使うと電子メールで送る事が出来ますが、APIを持ったメッセージアプリケーションに送信することも可能です。今回はSlackに通知を行ってみましょう。
動作確認環境
ソフトウェア | バージョン |
---|---|
Kompira | 1.4.10.post10 |
LinuxOS | CentOS6.10 |
または
ソフトウェア | バージョン |
---|---|
Kompira | 1.5.5.post7 |
LinuxOS | CentOS7.8.2003 |
Slackの設定
お使いのSlackのアカウントにメッセージ受信用のチャネルを作成します。今回は#kompiraを作成します。
次にSlackに外部からメッセージを送信できるように、”Incoming WebHooks”の設定をします。
More > Apps > 検索窓に”incoming webhooks”
これでApp Directoryの”Incoming WebHooks”のページが表示されます。
左の”Add to Slack”ボタンをクリック
“Post to channel”画面で、チャネル名が”#kompira”になっている事を確認して、”Add Incoming Webhooks Integration”ボタンをクリック
“Setup Instructions”画面の”Webhook URL”を別途メモ帳などに記録しておいてください。(Kompiraのジョブフローに設定します。)
その他の項目は、続く”Integration Setting”も含めて、最低限はデフォルトでも良いですが、必要に応じて変更してください。
ここでは”Customize Name”を”Kompira2Slack”と変更してみます。
設定が完了したら”Save Setting”ボタンをクリックしてください。
Kompiraジョブフローの作成
続いてKompira側にジョブフロー「Slackへ通知」を次の様に作成します。
|message = "This is a sample line of text. Does it work?"| |url = "https://hooks.slack.com/services/xxxxxxxxx/xxxxxxxxxx/xxxxxxxxxxxxxxxxxxxxx" | #Webhook URL # urlopen()を使用する場合 urlopen(url=url, data={"text": message}, http_method="POST", encode="json", quiet=true) -> # curlコマンドを使用する場合 # ['''curl -X POST -H 'Content-type: application/json' --data '{"text":"$message"}' $url'''] -> print("Slackへ送信しました。")
ここでパラメータ”url”には、Slackのセットアップ画面で表示された”Webhooks URL”を記載してください。
このジョブフローを実行すると、Slackに次のように投稿されます。
このようにKompiraからSlackのチャネルへの投稿は容易に可能です。
これを他のジョブフローから利用する場合には、例えば以下のように呼び出します。
[./Slackへ通知:message="緊急事態:至急対応してください" ]
単純なメッセージ送信以外にもリンクURLの送信やアイコン・色の変更なども行えます。リッチなメッセージ作成の詳細はSlack APIの”Message“をご参照ください。
スタートガイド
Kompiraジョブフローの基礎
ジョブフローの簡単な例
Kompiraの機能
-
- フィールド修飾子でフィールドの入力内容に制約を設ける
- Kompiraでの文字列のパターンマッチング
- Kompira上でWikiページを作成する
- スケジューラを使って定期的にジョブを実行する
- ジョブフローを実行するフォームを作成する
- テーブル内の情報を選択して処理を実行する
- ジョブフローに権限設定をする
- ジョブフロー画面の各種設定
- Pythonで記述された処理をKompiraから呼び出す
- Kompiraオブジェクトのプロパティ,メソッド,フィールドを扱う
- Windowsでリモートスクリプトを実行する(その1)
- Windowsでリモートスクリプトを実行する(その2)
- Kompira上のデータをバックアップする(その1)
- Kompira上のデータをバックアップする(その2)
- Kompira上のデータをバックアップする(その3)
外部との連携
-
- Prometheusからの通知をKompiraで受信する
- Kompira cloud Pigeonを利用した通知電話の利用
- ネットワーク機器へのコマンド投入
- KompiraからWindowsGUIアプリケーションを操作する (1/2)
- メールを送信する
- メール受信をトリガーにしてジョブフローを実行する
- アラートメールをフィルタリングして転送する
- チャネルを利用して外部システムからデータを受信する
- Webページから内容を取得する
- Redmineへ新規チケットを登録する
- Redmineでのチケット作成をKompiraに通知する
- Kompira REST APIを利用して外部からジョブフローを実行する
- Kompira REST APIを利用して外部からオブジェクト情報を取得する
- KompiraからSlackに通知する
- Slackでの投稿をKompiraに通知する
- KompiraからTwilioで電話をかける
- Zabbixからの通知をKompiraで受信する
- syslogをKompiraで受信する
- snmptrapをKompiraで受信する
- KompiraでExcelファイルの読み書きをする
- KompiraでGoogle SpreadSheetの読み書きをする
- Active Directoryから情報を取得する
- Active Directoryにユーザーを登録する