SLACKとの連携方法

  モニタリング

SFCTのモニタリングとSLACKを連携することで、装置が停止したとき、動作したときにSLACKにメッセージを送信したり、停止理由をSLACKのメッセージ上で変更することが出来ます。

停止時にはSLACKのメッセージ上で停止理由を変更することも出来ます。

手順

  1. SLACKにチャンネルを作成します。(詳細は省略します)
  2. SLACKのチャンネル上でアプリケーションを作成する
  3. モニタリングシステムと連携するための設定情報を作成&確認します
  4. モニタリングシステムにSLACKの投稿先を設定する

1. SLACKにWorkspaceを作成します

詳細は省略します。

2. SLACKのチャンネル上でアプリケーションを作成する

Slack APIのページで「Create an App」をクリックします。

https://api.slack.com/apps

From an app manifestを選択します

Workspaceを選択して「Next」をクリックします。

「YAML」の状態で下のテキストを貼り付けて、「Next」をクリックします。

_metadata:
  major_version: 1
  minor_version: 1
display_information:
  name: Appliot SFCT
features:
  bot_user:
    display_name: Appliot SFCT
    always_online: false
oauth_config:
  scopes:
    bot:
      - incoming-webhook
      - chat:write
      - chat:write.customize
settings:
  interactivity:
    is_enabled: true
    request_url: https://api.appliot.co.jp/v0/apps/slack
  org_deploy_enabled: false
  socket_mode_enabled: false
  token_rotation_enabled: false

「Create」をクリックします。

SFCTというアプリケーションが作成されて、このような画面になります。

3. モニタリングシステムと連携するための設定情報を作成し、確認します

Incoming webhook(着信Webhook)をクリックします

「Add New Webhook to Workspace」をクリックします

投稿するチャンネルを選択して「許可する」をクリックします。

ページの下部に、連携するチャンネルに投稿するためのWebhookのURLが作成されます。
このURLは後ほど使用します

続いて、「OAuth & Permissions」をクリックします

OAuth & Permissionsの上部 「OAuth Tokens for Your Workspace」の「Bot User OAuth Token」を後ほど使用します。

ここまでで、SLACKに投稿するために必要な

  • Incoming WebhookのURL
  • Bot User Auth Token

を作成しました。

4. モニタリングシステムにSLACKの投稿先を設定する

モニタリングシステムにアクセスし、装置情報のページで、SLACK連携する装置のOptionsに以下のように設定を記載してください。

貼り付けるデータの形式

{
  "notice": {
    "slack": {
      "reasonFilter": true,
      "url": "Incoming WebhookのURL",
      "token": "Bot User Auth Token"
    }
  }
}

データの仕様

装置情報

ラベル名機能説明
notice.slack.reasonFilter停止理由で通知の有無を指定するときにtrueを設定してください
停止理由での通知有無を指定しない場合はfalseを設定してください
notice.slack.urlSLACKのWorkspaceで作成した投稿先のチャンネルのIncoming webhookのURLを指定してください
notice.slack.tokenSLACK Workspaceの「Bot User Auth Token」を指定してください。

停止理由

ラベル名機能説明
notice装置情報の通知設定’notice.slack.reasonFilter’がtrueのとき、noticeにtrueを設定した停止理由のときのみ通知が送信されます。optionsの設定は{“notice”:true}を設定してください。
未設定またはfalseの時には、通知を送りません。