エラー処理 - Amazon Kinesis Data Analytics for SQL Applications 開発者ガイド

新しいプロジェクトでは、SQL アプリケーション用 Kinesis Data Analytics よりも新しい Kinesis Data Analytics スタジオを使用することをお勧めします。Kinesis Data Analytics Studio は、使いやすさと高度な分析機能を兼ね備えているため、高度なストリーム処理アプリケーションを数分で構築できます。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

エラー処理

Amazon Kinesis Data Analytics は、API や SQL のエラーを直接ユーザーに返します。API オペレーションの詳細については、「アクション」を参照してください。SQL エラー処理の詳細については、「」を参照してください。Amazon Kinesis Data Analytics SQL リファレンス

Amazon Kinesis Data Analytics は、「」というアプリケーション内エラーストリームを使用してランタイムエラーを報告しますerror_stream

アプリケーション内エラーストリームを使用してエラーをレポートする

Amazon Kinesis Data Analytics は、「」というアプリケーション内エラーストリームにランタイムエラーを報告しますerror_stream。発生する可能性のあるエラーの例を以下に示します。

  • ストリーミングソースから読み取られたレコードが入力スキーマに適合していない。

  • アプリケーションコードがゼロでの除算を指定している。

  • 行が入れ替わっている (たとえば、ユーザーによって ROWTIME 値が変更されたレコードがストリームに現れると、レコードの順序が乱れます)。

  • ソースストリームのデータをスキーマで指定されたデータ型に変換することはできません (強制エラー)。変換できるデータ型の詳細については、「JSON データ型から SQL データ型へのマッピング」を参照してください。

これらのエラーは、SQL コードでプログラム的に処理するか、外部宛先へのエラーストリームにデータを保持することをお勧めします。これには、アプリケーションに出力設定を追加する必要があります (「アプリケーション出力の設定」を参照)。アプリケーション内エラーストリームの動作の例については、「例: アプリケーション内エラーストリームの調査」を参照してください。

注記

エラーストリームはシステムアカウントを使用して作成されるため、Kinesis データ分析アプリケーションはエラーストリームにプログラムでアクセスしたり変更したりすることはできません。エラー出力を使用して、アプリケーションで発生する可能性のあるエラーを確認する必要があります。次に、アプリケーションの SQL コードを記述して、予期されるエラー条件を処理します。

エラーストリームのスキーマ

エラーストリームには、次のスキーマがあります。

フィールド

データ型

Notes (メモ)

ERROR_TIME

TIMESTAMP

エラーが発生した時刻。

ERROR_LEVEL

VARCHAR(10)

ERROR_NAME

VARCHAR(32)

MESSAGE

VARCHAR(4096)

DATA_ROWTIME

TIMESTAMP

受信レコードの ROWTIME。

DATA_ROW

VARCHAR(49152)

元の行の 16 進エンコードデータ。標準ライブラリを使用してこの値を 16 進数でデコードするか、この Hex to String Converter などのウェブリソースを使用できます。

PUMP_NAME

VARCHAR(128)

CREATE PUMP で定義されている送信ポンプ。