Во время планового O&M, когда кластер Elasticsearch становится медленным, возвращает ошибку запроса или отображает желтый статус, команде O&M необходимо сразу получать соответствующую информацию. CSS предоставляет функцию log query, которая агрегирует журналы серверов в консоль, где вы можете выполнять запросы по узлу и log level за секунды. Анализируя run logs, slow query logs и deprecation logs, вы можете быстро определить коренные причины сбоев и проблем. Кроме того, вы можете динамически изменять log level и включать trace logging для отладки, получая самые подробные записи журналов без перезапуска кластера.
Запрос недавно сгенерированных журналов, которые ещё не архивированы.
Вы можете искать записи по типу журнала, узлу, log level или ключевому слову. Подробное описание каждого типа журналов см. в Log Types.
Когда размер файла журнала достигает 128 МБ или наступает 00:00 UTC, система автоматически сжимает и архивирует его. На странице поиска журналов отображаются только неархивированные журналы, тогда как архивированные доступны через функцию log backup. Дополнительную информацию см. в Backing Up Logs to OBS.
В кластерах Elasticsearch в качестве компонента журналирования используется Log4j2. Поддерживается несколько log level (ERROR, WARN, INFO, DEBUG и TRACE). Значение log level по умолчанию — INFO. Для упрощения устранения неполадок и отладки вы можете динамически изменять log level.
Левая часть консоли — command input box, а треугольный значок в её правом верхнем углу — execution button. Правая часть показывает execution result.
PUT _cluster/settings{"persistent": {"logger": {"org.elasticsearch.action": "DEBUG"}}}
PUT _cluster/settings{"persistent": {"logger": {"org.elasticsearch.action": null}}}
Для анализа деталей коммуникации на уровне HTTP или транспортного уровня можно включить trace logging для модуля HTTP или Transport, чтобы получить подробные записи журналов.
Левая часть консоли — это command input box, а треугольный значок в её правом верхнем углу является execution button. Правая часть отображает результат выполнения.
PUT _cluster/settings{"transient": {"logger.org.elasticsearch.transport.TransportService.tracer": "trace","transport.tracer.include": "","http.tracer.include": "","logger.org.elasticsearch.http.HttpTracer": "trace"}}
Включение trace logging является непостоянной конфигурацией и будет отключено после перезапуска кластера. Обычно оно используется для экстренного захвата пакетов и их анализа при устранении неполадок.
Тип журнала | Описание | Назначение |
|---|---|---|
Run logs | Run logs, или основные журналы, фиксируют состояние кластера и ключевую информацию о операциях записи и запросов. Например, журналы записи фиксируют такие операции, как создание индекса, обновление сопоставления индекса и исчерпание очереди записи; а журналы запросов фиксируют состояние очереди запросов и исключения запросов. | Проверьте состояние и операции записи и запросов каждого узла кластера, включая связность между узлами, полную сборку мусора (full GC), создание или удаление индексов и ошибки запросов на уровне кластера. |
Slow indexing logs | Slow indexing logs записывают операции индексации (например bulk, index, update и delete), которые заняли длительное время, помогая вам выявлять узкие места в производительности. | В случае медленной записи вы можете выполнить запрос к slow indexing logs, чтобы определить причину. |
Slow query logs | Slow query logs записывают запросы поиска, которые заняли длительное время. Они помогают вам мониторить и анализировать ресурсоёмкие запросы поиска, чтобы вы могли выявлять узкие места в производительности, оптимизировать SQL‑запросы и повышать общую производительность системы. | В случае медленной работы запросов вы можете выполнить запрос к slow query logs, чтобы определить причину. |
Deprecation logs | Deprecation logs записывают предупреждения об устаревании. Предупреждения об устаревании записываются в этот журнал, когда вы используете API, конфигурации или функции, помеченные для удаления в будущих версиях. | Проверьте API или функции, которые скоро будут устаревать в будущих версиях. |
Access logs | Access logs записывают запросы доступа к кластеру, такие как путь запроса и исходный адрес. Вы не можете просматривать access logs в консоли. Чтобы просмотреть их, необходимо сначала сохранить их в OBS bucket или перенести в target cluster. | Если наблюдается всплеск запросов к сервису, вы можете проанализировать источники запросов и пути, проверив access logs. |
Run logs записывают статус кластера и ключевую информацию о операциях записи и запросов. Например, запись журнала ниже показывает, что был создан индекс test, а затем статус кластера изменился с YELLOW на GREEN.
Рисунок 1 Пример журналов выполнения

Содержимое журнала:
Журналы медленной индексации фиксируют операции индексации, которые заняли длительное время. Например, запись журнала ниже показывает запрос индексации, продолжительность которого превысила установленный порог. Журнал содержит имя индекса, длительность и содержимое запроса.
Рисунок 2 Пример журналов медленной индексации

Содержимое журнала: 1. Время создания журнала
Журналы медленных запросов фиксируют поисковые запросы, выполнение которых заняло длительное время. Например, запись журнала ниже показывает поисковый запрос, который превысил установленный порог. Журнал содержит имя индекса, продолжительность и содержание запроса.
Figure 3 Пример журналов медленных запросов

Содержание журнала:
Журналы устаревших функций фиксируют предупреждения об устаревании. Например, запись журнала ниже указывает, что GET /_cat/master устарела и должна быть заменена на GET /_cat/cluster_manager.
Figure 4 Пример журналов устаревших функций

Содержимое лога:
Журналы доступа фиксируют запросы доступа к кластеру и исходные адреса. Например, запись журнала ниже содержит информацию об источнике для операции /_snapshot/my_backup/my_snapshot/_restore?pretty=true.
Рисунок 5 Пример журналов доступа

Содержимое лога:
Как установить пороги медленного журнала запросов для кластера Elasticsearch в CSS?