Sentryを導入した話
今回はクライアントサイドに入れたけども、サーバサイドにも入れた方がいいなと思った
サーバサイドでもクライアントサイドでも対話IDを追加で送るべきだなと気づいた

あなたはこの会話で何が起きて欲しいですか?

Sentryを導入した話をしたい

その「Sentry」は、どんな「Sentry」ですか?

ユーザの手元のブラウザ上でエラーが起きた時にそれを開発者に伝える機能です

その「ユーザ」は、どんな「ユーザ」ですか?

ユーザが僕でかつPCで操作してる時にはエラーログが何もしなくても見れるのだけど、それ以外の時には見れないからこういう仕組みが必要だった

その「ユーザ」について、他に何かありますか?

エラーが起きた時に内容をつたえてくれるわけじゃないから、システム自体に伝える機能を入れておくわけ

その「エラー」は、どんな「エラー」ですか?

例えば最近、直前の会話を再開する機能をつけたんだけど、そうすると自分の開発マシンではエラーにならないけど「直前の会話」の存在しないユーザの手元でだけエラーになるって問題が発生していて、そういうのに気づくのはシステムに手助けしてほしいなぁと思うわけです

その「エラー」について、他に何かありますか?

どういう操作をしてそのエラーが起きたかも記録されるのでデバッグが捗る

その「エラー」は、どこにありますか?

ユーザの手元にある

あなたはその「ユーザ」をどう知るのですか?

ユーザが具体的に誰であるかは知らないのだけど、ブラウザとかOSとかの情報はわかる

その「ユーザ」は、どこにありますか?

僕と離れたところにいるから僕が直接観察できないわけ

あなたが価値を感じているのは何ですか?

離れたところにいるユーザの手元で起きたエラーの情報を詳しく速やかに通知してくれることで、問題を見つけやすくなるし、解決もしやすくなる、というところだな

あなたはその「エラー」をどう知るのですか?

メール通知される
> 離れたところにいるユーザの手元で起きたエラーの情報を詳しく速やかに通知してくれることで、問題を見つけやすくなるし、解決もしやすくなる、というところだな
この「エラー」は、どのあたりにありますか?

ユーザの手元のブラウザ上、あ、そうだ、サーバ上のエラーも同じように通知させられるので、それもやった方がいいね。早く気づく、という価値のためには。

その「エラー」に関して、何が起こるとよいですか?

速やかに解決されると良い

それには「エラー」に何が起こる必要がありますか?

解決のために必要な情報とセットで通知されると良い

「エラー」に関して、それができますか?

必要な情報として何があれば十分なのかは未知だな。サーバ上の方は対話IDを送信した方が良さそう。
> ユーザの手元のブラウザ上、あ、そうだ、サーバ上のエラーも同じように通知させられるので、それもやった方がいいね。早く気づく、という価値のためには。
この「ユーザ」は、どこから来るのですか?

具体的なユーザを取得してないから、クライアント版でも対話IDを送信した方がよさそうだな

その「ユーザ」は、どのあたりにありますか?