メールエージェントのオブザーバビリティ
メールエージェントが動作する様子をリアルタイムで監視することはできません。
しかし、APIを1回呼び出すだけで、昨日エージェントが行ったすべてのことを確認できます。
メール上でエージェントを構築すれば、オブザーバビリティが組み込まれた状態になります。ほとんどの自律型システムでは、トレースやログのために追加のツールが必要になります。メールエージェントの場合、メールボックス自体が記録となるため、これらを無料で手に入れることができます。
メールを使用してエージェントを監視する方法は以下の通りです。
入力モニタリング すべての受信メッセージは
message.createdイベントをトリガーします。これにより、会話を再構築するために必要なスレッドIDが取得できます。メッセージが大きすぎる場合は、message.created.truncatedトリガーを確認してください。これにより、ID経由で全文を取得する必要があることがわかります。出力モニタリング プラットフォームはすべての送信についてレポートします。配信の健全性を確認するために、以下の3つのトリガーを追跡してください。 •
message.send_success: 受信側のサーバーがメールを受理しました。 •message.send_failed: ルールまたはポリシーによって送信メールがブロックされました。 •message.bounce_detected: リモートサーバーがメールを拒否しました。
send_failed のカウントが増加した場合は、問題が発生している最初の兆候です。これは、ルールやクォータ(割り当て制限)によってエージェントが制限されていることを意味します。
ステート(状態)モニタリング メールボックスのフォルダはステートマシンとして機能します。 • 迷惑メールフォルダ: スパムフィルターが何を検知しているかを示します。 • 下書きフォルダ: Human-in-the-loop(人間が介在する)設計における承認キューとして機能します。下書きが長時間残っている場合は、承認プロセスが停滞しています。 • 送信済みフォルダ: 完璧な監査ログを提供します。メールそのものが「現実」であるため、ログが現実と食い違うことはありません。
ガバナンス・モニタリング エージェントがメッセージを見逃した場合は、ルールの評価を確認してください。SMTPレイヤーで、なぜルールがメッセージを拒否したのかをクエリできます。これにより、推測ではなくデータに基づいて判断できるようになります。
注意すべき制限が1つあります。配信状況は追跡できますが、このAPIを通じて人間がメールを開封したか、あるいはリンクをクリックしたかを追跡することはできません。また、エージェント自身の推論プロセスもログに記録する必要があります。メールボックスはエージェントが「何をしたか」を示しますが、エージェントが「なぜそうすることに決めたか」は自身でログに記録しなければなりません。
まずは以下の3つを追跡することから始めてください。
message.send_successmessage.send_failedmessage.bounce_detected
入力の失敗は目立ち、分かりやすいものです。一方、出力の失敗は静かに起こります。これらのシグナルを追跡することで、エラーを数週間ではなく、数分で見つけることができるようになります。
Source: https://dev.to/qasim157/observability-for-email-agents-4egn
Optional learning community: https://t.me/GyaanSetuAi