Slackにプログラムから投稿するときにはtokenが必要になります
レイアウトが変わったりして、発行場所がわからなかったのでメモ
https://api.slack.com/web
のAuthenticationにありました
作ってなければCreate Tokenとかボタンが出てきて発行できます
ひびのきろく
Slackにプログラムから投稿するときにはtokenが必要になります
レイアウトが変わったりして、発行場所がわからなかったのでメモ
https://api.slack.com/web
のAuthenticationにありました
作ってなければCreate Tokenとかボタンが出てきて発行できます
通知は全部Slackに..を進めてます
New Relicの通知をSlackにしてみました
まずはSlackにログイン
Configure IntegrationからNew Relicを検索
表示して、チャンネルを選択
そしたらURLが用意されるので控えます
Saveしておいて次は、New Relicにログイン
Servers > Alerts、Server policiesをクリック、Editをクリック
Alert Channelsタブを開いてCreate channelsをクリック
ChannelのCreate channelでWebhookを選択
SlackでもらったURLをいれて保存
あとは、Server Alert policiesとかでAlert channelにWebhookを追加すればできあがり
curlコマンドでslackに通知する
でcurlを使ってslackに通知した際、メッセージをシェルスクリプトで用意して送ってみました
シェルスクリプトはこんな感じ
error="何かしらのエラー"
curl_content='payload={"channel": "#channel", "username": "webhooker", "text": "'
curl_content="${curl_content}${error}"
curl_content="${curl_content}\"}"
curl="curl -X POST --data-urlencode `echo -e "'${curl_content}'"` https://hooks.slack.com/services/XXXXXXX/XXXXXXX/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
eval $curl
error変数にメッセージをセット、
jsonを組み立てて、
curlコマンドごと変数にセット、
evalで実行
な感じです
シェルスクリプトレベルが低すぎてこんなんになった
もっとうまくかけるはず..
シェルスクリプトとかからcurlコマンドでslackへ通知してみたのでメモ
まずはslackでConfigure Integrationを開きます
Incoming WebHooksを見ます
チャンネルを選んで
アドレスが手にはいります
あとはこれを使ってcurlコマンドを打てばOK
$ curl -X POST --data-urlencode 'payload={"channel": "#channel", "username": "webhookbot", "text": "サンプル"}' https://hooks.slack.com/services/XXXXXXX/XXXXXXX/xxxxxxxxxxxxxxxxxxx
Postでjson渡してもいいそうです