Перейти к основному содержанию
Перейти к основному содержанию

system.dead_letter_queue

Содержит информацию о сообщениях, полученных через стриминговый движок и разобранных с ошибками. В настоящее время поддерживается для Kafka и RabbitMQ.

Логирование включается указанием dead_letter_queue для параметра handle_error_mode, специфичного для движка.

Период сброса данных задаётся параметром flush_interval_milliseconds в разделе настроек сервера dead_letter_queue. Для принудительного сброса используйте запрос SYSTEM FLUSH LOGS.

ClickHouse не удаляет данные из таблицы автоматически. Дополнительные сведения см. в разделе Введение.

Столбцы:

  • table_engine (Enum8) — Тип стриминга. Возможные значения: Kafka и RabbitMQ.
  • event_date (Date) — Дата получения сообщения.
  • event_time (DateTime) — Дата и время получения сообщения.
  • event_time_microseconds (DateTime64) — Время получения сообщения с точностью до микросекунд.
  • database (LowCardinality(String)) — База данных ClickHouse, к которой относится стриминговая таблица.
  • table (LowCardinality(String)) — Имя таблицы ClickHouse.
  • error (String) — Текст ошибки.
  • raw_message (String) — Тело сообщения.
  • kafka_topic_name (String) — Имя топика Kafka.
  • kafka_partition (UInt64) — Раздел (partition) топика Kafka.
  • kafka_offset (UInt64) — Смещение сообщения в Kafka.
  • kafka_key (String) — Ключ сообщения в Kafka.
  • rabbitmq_exchange_name (String) — Имя exchange в RabbitMQ.
  • rabbitmq_message_id (String) — Идентификатор сообщения в RabbitMQ.
  • rabbitmq_message_timestamp (DateTime) — Отметка времени сообщения в RabbitMQ.
  • rabbitmq_message_redelivered (UInt8) — Флаг повторной доставки в RabbitMQ.
  • rabbitmq_message_delivery_tag (UInt64) — Метка доставки сообщения в RabbitMQ.
  • rabbitmq_channel_id (String) — Идентификатор канала RabbitMQ.

Пример

Запрос:

SELECT * FROM system.dead_letter_queue LIMIT 1 \G;

Результат:

Строка 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:                         Не удаётся разобрать входные данные: ожидался символ '\t' перед 'qwertyuiop' (в строке 1)
:
Строка 1:
Столбец 0,   имя: key,   тип: UInt64, ОШИБКА: текст "qwertyuiop" не соответствует типу 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:

Строка 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:                         Не удаётся разобрать входные данные: ожидался символ '\t' перед 'asdfghjkl' (в строке 1)
:
Строка 1:
Столбец 0,   имя: key,   тип: UInt64, ОШИБКА: текст "asdfghjkl" не соответствует типу 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:

Строка 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:                         Не удаётся разобрать входные данные: ожидался символ '\t' перед 'zxcvbnm' (в строке 1)
:
Строка 1:
Столбец 0,   имя: key,   тип: UInt64, ОШИБКА: текст "zxcvbnm" не соответствует типу 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_consumers, содержащей статистику, ошибки и другую информацию о потребителях Kafka.