説明
ストリーミングエンジン 経由で受信され、エラー付きで解析されたメッセージに関する情報が含まれます。現在は Kafka と RabbitMQ で実装されています。
ロギングは、engine 固有の handle_error_mode 設定で dead_letter_queue を指定すると有効になります。
データのフラッシュ間隔は、サーバー設定の dead_letter_queue セクションにある flush_interval_milliseconds パラメータで設定します。フラッシュを強制するには、SYSTEM FLUSH LOGS クエリを使用します。
ClickHouse はテーブルからデータを自動的に削除しません。詳細は Introduction を参照してください。
カラム
table_engine(Enum8('Kafka' = 1, 'RabbitMQ' = 2)) — ストリームの種類。設定可能な値: 'Kafka', 'RabbitMQ'。event_date(Date) — メッセージを消費した日付。event_time(DateTime) — メッセージを消費した日時。event_time_microseconds(DateTime64(6)) — マイクロ秒精度のクエリ開始時刻。database(LowCardinality(String)) — Kafka テーブルが属する ClickHouse データベース。table(LowCardinality(String)) — ClickHouse テーブル名。error(String) — エラーメッセージ。raw_message(String) — メッセージ本文。kafka_topic_name(String) — Kafka トピック名。kafka_partition(UInt64) — トピックの Kafka パーティション。kafka_offset(UInt64) — メッセージの Kafka オフセット。kafka_key(String) — メッセージの Kafka キー。rabbitmq_exchange_name(String) — RabbitMQ exchange 名。rabbitmq_message_id(String) — RabbitMQ メッセージ ID。rabbitmq_message_timestamp(DateTime) — RabbitMQ メッセージの timestamp。rabbitmq_message_redelivered(UInt8) — RabbitMQ の再配信フラグ。rabbitmq_message_delivery_tag(UInt64) — RabbitMQ の配信タグ。rabbitmq_channel_id(String) — RabbitMQ チャネル ID。
例
SELECT * FROM system.dead_letter_queue LIMIT 1 \G;Row 1:
──────
table_engine: Kafka
event_date: 2025-05-01
event_time: 2025-05-01 10:34:53
event_time_microseconds: 2025-05-01 10:34:53.910773
database: default
table: kafka
error: Cannot parse input: expected '\t' before: 'qwertyuiop': (at row 1)
:
Row 1:
Column 0, name: key, type: UInt64, ERROR: text "qwertyuiop" is not like UInt64
raw_message: qwertyuiop
kafka_topic_name: TSV_dead_letter_queue_err_1746095689
kafka_partition: 0
kafka_offset: 0
kafka_key:
rabbitmq_exchange_name:
rabbitmq_message_id:
rabbitmq_message_timestamp: 1970-01-01 00:00:00
rabbitmq_message_redelivered: 0
rabbitmq_message_delivery_tag: 0
rabbitmq_channel_id:
Row 2:
──────
table_engine: Kafka
event_date: 2025-05-01
event_time: 2025-05-01 10:34:53
event_time_microseconds: 2025-05-01 10:34:53.910944
database: default
table: kafka
error: Cannot parse input: expected '\t' before: 'asdfghjkl': (at row 1)
:
Row 1:
Column 0, name: key, type: UInt64, ERROR: text "asdfghjkl" is not like UInt64
raw_message: asdfghjkl
kafka_topic_name: TSV_dead_letter_queue_err_1746095689
kafka_partition: 0
kafka_offset: 0
kafka_key:
rabbitmq_exchange_name:
rabbitmq_message_id:
rabbitmq_message_timestamp: 1970-01-01 00:00:00
rabbitmq_message_redelivered: 0
rabbitmq_message_delivery_tag: 0
rabbitmq_channel_id:
Row 3:
──────
table_engine: Kafka
event_date: 2025-05-01
event_time: 2025-05-01 10:34:53
event_time_microseconds: 2025-05-01 10:34:53.911092
database: default
table: kafka
error: Cannot parse input: expected '\t' before: 'zxcvbnm': (at row 1)
:
Row 1:
Column 0, name: key, type: UInt64, ERROR: text "zxcvbnm" is not like UInt64
raw_message: zxcvbnm
kafka_topic_name: TSV_dead_letter_queue_err_1746095689
kafka_partition: 0
kafka_offset: 0
kafka_key:
rabbitmq_exchange_name:
rabbitmq_message_id:
rabbitmq_message_timestamp: 1970-01-01 00:00:00
rabbitmq_message_redelivered: 0
rabbitmq_message_delivery_tag: 0
rabbitmq_channel_id:
(test.py:78, dead_letter_queue_test)関連項目
- Kafka - Kafka エンジン
- system.kafka_consumers — Kafka コンシューマーに関する統計情報やエラーなどの情報を含む、
kafka_consumersシステムテーブルの説明。