Slack Bot を作成する際に、Slackからのリクエストを検証する方法について調べたメモです。
Slackからのリクエスト検証手順
必要なもの
- Signing Secret
- Slack から送信される HTTP リクエスト(例えばスラッシュコマンド実行時にSlackから外部へ送信されるリクエスト)
手順
Slack 公式ドキュメントにも記載されていますが、リクエストの検証は以下のステップで行われます。
Slack Bot を作成する際に、Slackからのリクエストを検証する方法について調べたメモです。
Slack 公式ドキュメントにも記載されていますが、リクエストの検証は以下のステップで行われます。
AI エージェントを使ったシステム開発は面白い。特に設計の壁打ちをよく行なっている。
LLMツールが進化し、自然言語による説明からコードを生成できたり、既存コードを最適化することが容易になってきていると感じる。
この楽さに危機感も感じる。対して思考しなくてもアウトプットが出てきてしまう。しかもかなりのスピードで。 この便利さに頼りすぎると、開発者のスキルが向上しなくなる可能性がある。AI エージェントはあくまでツールであり、開発者自身の理解や創造力も必要で、これをおろそかにしていくと、開発者としての成長は無くなってしまうように思う。
アウトプットばかりに意識が行き過ぎると、高速に何かが出来上がることに満足感を覚えてしまい、一方でそれに必要な知識や技術の理解が追いつかないまま物事が進んでしまう。 ゆくゆくはそれでも成り立つ未来が来るかもしれないが、個人的には自分が扱う技術領域に関しての知識や理解も深めていきたい。
一定知識がないと生成されたものの良し悪しも判断できなくなり、自分の頭を使っての意思決定する能力も衰えていく気がするので、学習していく姿勢も大事にしたい。
それなりの量のイベントログに相当するデータを保存したいとなったときに、DynamoDBを使う場合にどうするのが良いのか調べた自分用のメモです。
1つのテーブルにデータを投入すると検索などのWCUを意識する必要が出てくるので、保存期間ごとに分けてテーブルを作成していく、というやり方があるらしい。
例えば以下のような形。
リアルタイムに保存する場合だと、日付の境目のデータをどう保存するか考える必要がありそうだが、バッチ処理なら良さそう。
Lambdaとかで事前にテーブルを作るというやり方が紹介されている。
パーティションキーはテーブルのデータが格納されている論理パーティションになる。 例えば日付yyyy-mm-ddをパーティションキーとした場合、2025-05-10のデータは、DynamoDBの裏側では同じところに保存されるようなイメージになる。そうなるとI/O リクエストが分散されない。
そのため、今日の日付を表すパーティションキーの場合は、1 と N の間の乱数を選択し、それをサフィックスとして日付に連結する、などにすると良い。
特定の日のすべての項目を読み込むには、 2025-05-10.1.N キー (ここで N は 1 〜 128) をQueryする必要があり、アプリケーションはすべての結果をマージする必要があるという手間は発生する。 ただ、こうすると、IOが特定のパーティションに集中せず、分散できる、というメリットがある。
前回作った MCP Server と接続して動作するためのMCP Clientがどういうものか理解するためにチュートリアルをやってみたメモです。
続きを読む