SMS Gateway のレポート・イベント
これらのイベントは、JSON オブジェクト形式で作成され、Splunk HTTP Event Collector (HEC) と容易に統合できます。 レポート・イベントを、IBM Cloudant、CouchDB、または、イベントを保管する REST サーバーのいずれかにパブリッシュするように、SMS Gateway を構成できます。 transcription イベントは、バッチ処理されてから、構成されているレポート作成リソースに送信されます。
SMS Gateway は、構成されているレポート作成サービスがオフラインの場合に備えて、デフォルトのファイル・バックアップもサポートしています。 バックアップに記録されたイベントは、レポート作成サービスが使用可能になった時点でサービスに送信されます。 レポート・イベントのシステム・バックアップを参照してください。
SMS Gateway では、以下のタイプのレポート・イベントを生成できます。 レポート・イベントを構成および使用する方法について、各セクションを参照してください。
-
これらのイベントは、SMS トランザクション内のすべてのインバウンド・メッセージとアウトバウンド・メッセージについて報告されます。 メッセージ交換では多くのレポート・イベントが生成される可能性があるため、transcription レポート・イベントは、テナントごとに 10 秒間隔でバッチ処理されます。 その後、バッチ処理されたレポート・イベントがレポート作成サーバーに送信されます。
-
各テナントのインバウンド・メッセージとアウトバウンド・メッセージの総数は、10 秒間隔で SMS Gateway の各インスタンスから報告されます。
各テナントの使用量を判定するために、以下のメッセージがカウントされます。
- Watson Assistant または SMS パイプからユーザーへの出力メッセージ
- ユーザーまたは SMS パイプから受信したインバウンド・メッセージ
イベントのバッチ処理
transcription イベントは、SMS トランザクション内のすべてのインバウンド・メッセージとアウトバウンド・メッセージについて報告されます。 これらのイベントを個別に送信することは、ネットワーク・トラフィックの増大またはレポート作成サーバーの過負荷につながるおそれがあります。 このような問題を回避するために、イベントをバッチ処理して、メッセージを REST サーバーまたは IBM Cloudant サービスに送信する頻度を減らします。 デフォルトでは、レポート・イベントは 10 秒ごとにバッチ処理されます。
レポート・イベントのシステム・バックアップ
レポート・イベントのシステム・バックアップは、レポート・イベントのストレージ・サービスがオフラインの場合のデータ損失を防止します。
transcription イベントおよび usage イベント用のデフォルトのレポート・バックアップ・ディレクトリーは、コンテナー内の /mnt/transcriptionReporting と /mnt/usageReporting です。 これらは、パーシスタント・ボリュームを使用して作業ディレクトリーにマウントしたりマップしたりできます。 システムが使用するレポート・バックアップ・ファイルの数に対する制限を有効にすることができます。
以下の例は、transcription レポート・イベントのバックアップ・ディレクトリーをパーシスタント・ボリュームのファイル・パス /your.directory/smsgwTranReports にマウントする方法を示しています。
-
"kind":"PersistentVolume"を定義します。{ "kind":"PersistentVolume", "apiVersion":"v1", "metadata":{ "name":"smsgw-transcription-reports", "labels":{ "name":"smsgw-transcription-reports" } }, "spec":{ "capacity":{ "storage":"2Gi" }, "accessModes":[ "ReadWriteMany" ], "persistentVolumeReclaimPolicy":"Retain", "hostPath":{ "path":"/root/smsgwTranReports" } } } -
"kind":"PersistentVolumeClaim"を定義します。{ "kind":"PersistentVolumeClaim", "apiVersion":"v1", "metadata":{ "name":"smsgw-transcription-reports" }, "spec":{ "resources":{ "requests":{ "storage":"2Gi" } }, "selector":{ "matchLabels":{ "name":"smsgw-transcription-reports" } }, "accessModes":[ "ReadWriteMany" ] } } -
"kind":"Deployment"に、コンテナー内のvolumeMountを定義します。"volumeMounts": [{ "name": "smsgw-transcription-reports", "mountPath": "/mnt/transcriptionReporting" }] -
"kind": "Deployment"内のPersistentVolumeClaimおよびvolumeMountをマップしてボリュームを定義します。"spec": { "volumes": [{ "persistentVolumeClaim": { "claimName": "smsgw-transcription-reports" }, "name": "smsgw-transcription-reports" }] }