Облачная платформаAdvanced

Просмотр Kafka Rebalancing Logs

Язык статьи: Русский
Показать оригинал
Страница переведена автоматически и может содержать неточности. Рекомендуем сверяться с английской версией.

Перебалансировка — это перераспределение отношений подписки между consumers и topic partitions в consumer group. Во время перебалансировки все consumers в consumer group прекращают потребление сообщений до завершения перебалансировки.

Возможные причины перебалансировки:

  • Изменяется количество участников consumer group. Например, в группу присоединяется новый consumer или consumer покидает группу.
  • Изменяется количество тем, на которые подписан consumer group.
  • Изменяется количество разделов тем, на которые подписан consumer group.

Логи перебалансировки фиксируют детали перебалансировки, включая время, причину и клиент, инициировавший перебалансировку. В этом разделе описывается, как просматривать логи перебалансировки в консоли.

Логи перебалансировки хранятся и могут быть запрошены в Log Tank Service (LTS).

Примечания и ограничения

  • Логи перебалансировки хранятся по умолчанию семь дней. Чтобы сохранить их дольше, см. Modifying a Log Group.
  • Включение логирования перебалансировки создаст log group, log stream и dashboard в LTS.
  • Когда экземпляры Kafka хранят логи перебалансировки в одном log group и log stream, log group и stream каждого экземпляра содержат логи перебалансировки всех экземпляров.

Предварительные условия

  • Убедитесь, что у вас есть разрешения на создание log group и log stream в LTS.
  • Логирование перебалансировки можно включить или отключить только когда экземпляр Kafka находится в состоянии Running.

Включение журналирования ребалансировки

  1. Войдите в консоль.
  2. Нажмите в левом верхнем углу, чтобы выбрать регион, в котором находится ваш instance.
  3. Нажмите в левом верхнем углу и выберите Application > Distributed Message Service for Kafka, чтобы открыть список инстансов Kafka.
  4. Нажмите нужный instance, чтобы перейти на страницу сведений об instance.
  5. В панели навигации выберите Analysis & Diagnosis > Rebalancing Logs.
  6. Нажмите Enable Logging. Появится диалоговое окно Enable Logging.
  7. Нажмите OK. Появится диалоговое окно Configure Logs.
  8. Определите, требуется ли включить эту функцию. Нажмите OK. Появится страница Background Tasks. Функция журналирования ребалансировки включается, когда задача Enable logging находится в состоянии Successful.

    • Отключено: LTS автоматически создает группу журналов и поток журналов.
    • Включено: Выберите группу журналов и поток журналов, в которых хранится файл coordinator.log. Чтобы просмотреть или создать группу журналов и поток журналов, нажмите View Log Group справа, чтобы перейти в консоль LTS.

Просмотр журналов ребалансировки

  1. Войдите в консоль.
  2. Нажмите в левом верхнем углу, чтобы выбрать регион, в котором находится ваш instance.
  3. Нажмите в левом верхнем углу и выберите Application > Distributed Message Service for Kafka, чтобы открыть список инстансов Kafka.
  4. Нажмите нужный instance, чтобы перейти на страницу instance details.
  5. В панели навигации выберите Analysis & Diagnosis > Rebalancing Logs.
  6. На вкладке Dashboard просмотрите, сколько раз и почему группы потребителей перебалансируются. На вкладке Log Search просмотрите логи перебалансировки.

    Чтобы искать логи, см. Accessing the Log Search Page.

    Пример лога перебалансировки:

    {
    "level":"INFO",
    "timestamp":"2023-03-23 17:23:22,906",
    "message":{
    "leaderId":"consumer-1-177817b6-1f29-4717-8a83-dda8eaab1635",
    "generationId":"1",
    "reason":"Assignment received from leader for group KMOffsetCache-dms-vm-fa3cf9d6-manager-shared-server-0 for generation 1",
    "groupId":"KMOffsetCache-dms-vm-fa3cf9d6-manager-shared-server-0",
    "coordinatorId":"0",
    "type":"END_REBALANCE",
    "group":"GroupMetadata(groupId=KMOffsetCache-dms-vm-fa3cf9d6-manager-shared-server-0, generation=1, protocolType=Some(consumer), currentState=CompletingRebalance, members=Map(consumer-1-177817b6-1f29-4717-8a83-dda8eaab1635 -> MemberMetadata(memberId=consumer-1-177817b6-1f29-4717-8a83-dda8eaab1635, clientId=consumer-1, clientHost=/172.31.2.168, sessionTimeoutMs=10000, rebalanceTimeoutMs=300000, supportedProtocols=List(range), )))"
    }
    }

    Table 1 описывает параметры.

    Table 1 Параметры перебалансировки

    Параметр

    Описание

    уровень

    Уровень логов перебалансировки. Единственное значение — INFO.

    временная метка

    Время перебалансировки.

    leaderId

    ID лидера потребителя.

    generationId

    Идентификатор поколения consumer group. Поколение — это количество раз, когда consumer group выполняет ребалансировку. Он увеличивается на 1 каждый раз после завершения ребалансировки.

    reason

    Причина, вызвавшая ребалансировку.

    groupId

    Идентификатор consumer group.

    coordinatorId

    Брокер, в котором находится компонент Coordinator.

    type

    Операция, вызвавшая ребалансировку. Значения:

    • JOIN_GROUP: Добавлен новый consumer в consumer group.
    • OVER_CAPACITY: Превышен лимит группы.
    • UPDATE_MEMBER: Метаданные consumer обновлены.
    • PROTOCOL_CHANGE: Протокол изменён.
    • HEARTBEAT_EXPIRED: Тайм‑аут heartbeat consumer.
    • SYNC_GROUP: План переназначения синхронизирован.
    • END_REBALANCE: Ребалансировка завершена.
    • LEAVE_GROUP: Потребитель покинул группу потребителей.
    • DELETE_GROUP: Пользователь удалил группу потребителей.

    группа

    Информация о потребителях в группе потребителей.

Отключение журналирования ребалансировки

  1. Войдите в консоль.
  2. Нажмите в левом верхнем углу, чтобы выбрать регион, в котором находится ваш инстанс.
  3. Нажмите в левом верхнем углу и выберите Application > Distributed Message Service for Kafka, чтобы открыть список инстансов Kafka.
  4. Нажмите нужный инстанс, чтобы перейти на страницу сведений об инстансе.
  5. В панели навигации выберите Analysis & Diagnosis > Rebalancing Logs.
  6. Нажмите Disable Logging в правом верхнем углу. Появится диалоговое окно Disable Logging.
  7. Нажмите OK. Появится страница Background Tasks. Функция журналирования ребалансировки отключается, когда задача журналирования ребалансировки находится в состоянии Successful.

    Это отключает только функцию журналирования ребалансировки. Группы журналов и потоки журналов в LTS сохраняются и продолжают генерировать расходы. Если журналы больше не нужны, удалите log groups и log streams.