Amazon Connectの「コンタクトフロー」の動作ログを確認する手順例を紹介します。
はじめに
Amazon Connectでは発着信時の動作を「コンタクトフロー」として定義し、通話時の顧客体験を簡単に設定・カスタマイズが可能になっています。
条件によって分岐する等、複雑な設定も可能ですが、期待通り分岐しているか確認したいことがあります。
このようなケースでは動作結果を「フローログ」として出力しておくことで、動作内容をチェックすることが可能です。
この記事では、フローログを有効化し、CloudWatchを利用してログを検索する手順を紹介します。
フローログ有効化の準備
フローログを出力するためには2つの準備が必要です
1. インスタンスの設定
AWSコンソール上で操作します。
Amazon Connectサービスページから該当インスタンスを選択、左のメニューから「問い合わせフロー」を選択します。
画面右から「フローログ」セクションを見つけ、「フローログを有効にする」をチェック、「保存」をクリックします。

2. コンタクトフローの修正
ログを有効にしたいコンタクトフローへ「ログ記録動作の設定」ブロックを配置します。
フロー全体の流れを確認できる、フロー先頭に配置することをお奨めします。
修正後は、コンタクトフローの保存、公開を実施します。

コンタクトフローを動作させる
実際に通話を行うことでフローを動作させます。
正しく設定されていればログが出力されます。
下記手順で確認し、ログが出力されない場合は、上記設定内容、対象フローが動作する設定になっているか確認してみてください。
CloudWatch ロググループから参照
CloudWatch ロググループから参照する方法がシンプルです。
AWSコンソール上で、CloudWatchサービスページへアクセスし、ロググループ→該当ロググループをクリックします。
ロググループ名は 「/aws/connect/<インスタンスエイリアス名>」となるはずです。

該当ロググループを選択し、詳細内容を確認します。
先頭はフローログを有効化したログ内容となっており、実行されたフローブロックごとにログを確認できます。

CloudWatch Logs Insightsから検索する
上記CloudWatchロググループから参照する方法でフローログが確認可能です。
設定のテスト中や、通話数が少ない場面では有効ですが、
運用開始後など対象時間範囲内の通話が多いケースでは、同一時間帯にロググループが複数存在し、特定が大変な場合があります。
このようなケースでは、CloudWatch Logs Insightを利用することで迷わずロググループを見つけることができます。
便利な機能ですが、ログのインサイト画面は高機能で操作箇所が多く、初見では難しく感じるかもしれませんので下記にシンプルな手順を紹介します。
操作1.ロググループ選択
AWSコンソール上でCloudWatchサービスページへアクセスし、ログのインサイトをクリックします。
「ログループを参照」またはロググループプルダウン部分をクリックし、該当ロググループ「/aws/connect/<インスタンスエイリアス名>」を選択します。

操作2.日付・時刻範囲指定
続いて、検索対象とする日付・時刻範囲を指定します。
〇月△日の14時台、のような範囲で探す場合は「絶対値」指定で指定するのが分かりやすいと思います。

操作3.クエリ条件指定
クエリ部分の末尾へ下記条件を追加します。
| filter ContactId like 'コンタクトID'
先頭の縦棒も必要で、「コンタクトID」を実際の値に置き換えます。
初期状態のクエリも含めると全体としては下記のようになります。
fields @timestamp, @message, @logStream, @log | sort @timestamp desc | limit 10000 | filter ContactId like 'fbf15dcd-ed75-455c-927e-4490bf926dc3'
操作4.クエリの実行
上記まで指定し、「クエリの実行」をクリックすると最下段へ検索結果のログが表示されます。
ログ左の▶をクリックすると展開されるので、このまま内容確認可能です。
(クエリでタイムスタンプ逆順指定となっているため、一番上が新しいログになります)

操作5.ログストリームの表示
検索結果の 「@logStream」列はログストリームへのリンクになっていますので、クリックして別ページとして表示、確認も可能です。
表示ページでログの一部しか表示されない場合、前後のログが省略表示されている場合がありますので、「さらにロードします」リンクをクリックしてみてください。

注意点
インサイト機能はとても便利ですが、クエリ実行時のスキャンデータ量に応じてコストが発生します。
東京リージョンの場合は 1GBあたり、 0.0076USDとなっております。(2025年10月現在)
今回のように限定された期間のコンタクトフローをクエリする程度では大きなコストにはならないと考えてよいと思いますが、ご認識の上ご利用ください。