#shibuyago #2でSlackboardの話をしました

shibuyago.connpass.com

Shibuya.go#2でSlackboardの話をしてきました。以下発表資料。

speakerdeck.com

資料にもあるようにSlackboardはSlackのプロキシサーバとそのためのクライアントプログラムで構成されるツールです。

github.com

具体的には以下の3つになります。

  • slackboard - Slackのプロキシサーバ
  • slackboard-cli - slackboardとの通信用クライアント
  • slackboard-log - cronlogライクなslackboard-cli

今回はSlackboardの一通りの使い方とそもそも何故Slackのプロキシサーバが必要なのかという話をしました。後者は簡単に言うと、

  • Slackに通知されるメッセージとログの集約
  • Slackへの通知方法の統一

ということになります。サーバの台数やコンポーネントの数が多い環境だといろんなサーバからSlackにメッセージがポストされるようになってくるのですが、各サーバから個々にSlackに通知していると、

  • 肝心のメッセージがどこから飛んできているのかわからない(管理が大変)
  • チャンネル名変えたけど、まだどっかのサーバから古い名前のチャンネルに通知してた(結果通知が届かない)
  • 各所でSlackに通知するために利用しているプログラミング言語やライブラリがバラバラ(メンテコストが上がる)

ということが起こります。また、実際に上記の事態に遭遇したのがSlackboard開発のきっかけでもあります。今は全サーバにslackboard-clislackboard-logがインストールされているのでとても楽だなぁという感じです。

さいごに、会場とピザとビールを提供してくださった@suzu_vさん、VOYAGE GROUPさん、ありがとうございました。