Blog

Slack

自分で作成したサーバ態監視プログラムがあって、障害やログ監視で怪しい事が起こるとメールと Slack で飛ばしているのですが、今朝お客様のメールサーバで障害が起きましたがお客様から電話をいただくまで気がつきませんでした。今回の場合はメールサーバなので自身の障害をメールでは送れないわけで、その場合の保険としてSlackでメッセージも飛ばしているのにアラートが飛びませんでした。
この Slack のメッセージを送るプログラムはあちこちで利用しており、昨日の AM中 に自宅サーバから別の監視用途ですがメッセージが届いていたので、今朝はたまたま Slack社 のサーバ障害? なんて思いながらも
モヤモヤしており、気になったので先ほどアラート時のようにプログラムを動かしたらエラーが出ました。えっ! なんで?
Slack の API を利用しているのですが、

HTTP/1.1 426 Upgrade Required

が返って来ました。

エラーの理由が返って来てるので、丁寧にコンテキストを生成して渡したら動くようになりました。

$options = [
‘http’ => [
‘method’ => ‘GET’,
‘protocol_version’ => 1.1,
‘header’ => “Connection: close\r\n”
]
];
$context = stream_context_create($options);

仕様が厳しく変わったようでセキュリティ対策なんでしょうね!

ほとんどの会社で Slack が使われていると思うなので、今日は同じ理由でアタフタしているエンジニアが多いんじゃないでしょうか?

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

Post Navigation