Управление трафиком
Данный раздел описывает настройки для контроля трафика логов с применением семплирования, ограничения частоты событий и дедупликации. Это позволяет улучшать производительность системы, эффективно управляя нагрузкой на систему сбора логов.
Настройки могут быть применены как ко всем логам в рамках пространства целиком, так и лишь к определенным группам логов — например, к логам в рамках сервиса.
Управление трафиком осуществляется в разделе Настройки → Пространства и сервисы → Управление трафиком веб-интерфейса системы.
| Раздел доступен только учетным записям со статусом Суперадминистратор. |
Настройка управления трафиком
Чтобы настроить управление трафиком:
-
Перейдите в раздел Настройки → Пространства и сервисы → Управление трафиком.
-
Задайте следующие настройки:
-
Чтобы сохранить внесенные изменения, нажмите на кнопку Сохранить в нижней части раздела.
Вносите изменения в настройки с осторожностью. Некорректные настройки могут привести к повышенной нагрузке на систему или потере данных. Чтобы отменить все несохраненные изменения, нажмите на кнопку Отменить в нижней части раздела.
Чтобы сбросить все настройки до значений по умолчанию, нажмите на кнопку Сбросить настройки в нижней части раздела.
Семплирование логов
Семплирование логов — механизм оптимизации, при котором для хранения и анализа отбирается только часть поступивших логов.
Настройки семплирования сгруппированы по следующим секциям:
-
Глобальные настройки — применяются ко всем логам в рамках пространства.
-
Точечные настройки — применяются к определенным группам логов.
Глобальные настройки семплирования
-
Делитель семплирования (глобальный) — целое положительное число, определяющее, какой по счету лог в пространстве необходимо сохранить. Например, если делитель равен 100, то в системе сохраняется только 1 из каждых 100 логов, поступивших в пространство, остальные — удаляются.
По умолчанию параметр равен
1. Это означает, что в системе сохраняются все логи, поступающие в каждое пространство. -
Правило исключения из семплирования (глобальное) — условие на языке VRL, определяющее, нужно ли исключить событие из семплирования. Должно возвращать логическое значение:
-
true— событие сохраняется без участия в семплировании. -
false— событие участвует в семплировании.
Пример правила исключения из семплирования
.metadata."evo.space/space-id" == "space-1"Данное правило означает, что в системе без семплирования будут сохраняться все логи из пространства с ID
space-1. -
Точечные настройки семплирования
-
Делитель семплирования — целое положительное число, определяющее, какой по счету лог в группе необходимо сохранить. Например, если делитель равен 100, то в системе сохраняется только 1 из каждых 100 логов в группе, остальные — удаляются.
По умолчанию параметр равен
1. Это означает, что в системе сохраняются все логи из каждой группы. -
Группировать логи по полю — поле, по которому необходимо группировать логи для семплирования. Логи с одинаковым значением поля будут объединены в группу. Каждая группа участвует в семплировании независимо от других.
По умолчанию параметр имеет следующее значение:
'{{.metadata."evo.space/workload-id"}}'Это означает, что для семплирования все логи группируются по ID сервиса.
-
Правило исключения из семплирования — условие на языке VRL, определяющее, нужно ли исключить событие из семплирования. Должно возвращать логическое значение:
-
true— событие сохраняется без участия в семплировании. -
false— событие участвует в семплировании.
Пример правила исключения из семплирования
.metadata."evo.space/space-id" == "space-1"Данное правило означает, что в системе без семплирования будут сохраняться все логи из пространства с ID
space-1.По умолчанию параметр равен
true. Это означает, что все логи в каждой группе сохраняются в системе без семплирования. -
Ограничение частоты событий (троттлинг)
Троттлинг — механизм ограничения количества событий, которое система может обрабатывать. При достижении порогового количества событий новые события отбрасываются, пока поток событий не вернется к значениям ниже порога.
Настройки троттлинга сгруппированы по следующим секциям:
-
Глобальные настройки — применяются ко всем логам в рамках пространства.
-
Точечные настройки — применяются к определенным группам логов.
Глобальные настройки троттлинга
-
Порог событий (глобальный) — количество событий в пространстве, при достижении которого включается механизм троттлинга.
По умолчанию параметр равен
1000000. Это означает, что троттлинг активируется при достижении 1 000 000 событий в пространстве. -
Размер временного окна (глобальный) — количество секунд, в течение которых происходит подсчет событий.
По умолчанию параметр равен
1. Это означает, что троттлинг активируется при достижении порога событий за 1 секунду. -
Условие для исключения (глобальное) — условие на языке VRL, определяющее, нужно ли исключить событие из троттлинга. Должно возвращать логическое значение:
-
true— событие не участвует в троттлинге. -
false— событие участвует в троттлинге.
Пример правила исключения из троттлинга
.metadata."evo.space/space-id" == "space-1"Пример выше означает, что логи из пространства с ID
space-1не будут участвовать в механизме троттлинга.По умолчанию параметр равен
true. Это означает, что при подсчете порога событий никакие логи в пространстве не участвуют в механизме троттлинга. -
Точечные настройки троттлинга
-
Порог событий — количество событий в группе, при достижении которого включается механизм троттлинга.
По умолчанию параметр равен
1000000. Это означает, что троттлинг активируется при достижении 1 000 000 событий в группе. -
Размер временного окна — количество секунд, в течение которых происходит подсчет событий.
По умолчанию параметр равен
1. Это означает, что троттлинг активируется при достижении порога событий за 1 секунду. -
Правило группировки — поле, по которому необходимо группировать логи для троттлинга. Логи с одинаковым значением поля будут объединены в группу. Каждая группа участвует в троттлинге независимо от других.
По умолчанию параметр имеет следующее значение:
'{{.metadata."evo.space/workload-id"}}'Это означает, что для троттлинга все логи группируются по ID сервиса.
-
Условие для исключения — условие на языке VRL, определяющее, нужно ли исключить событие из троттлинга. Должно возвращать логическое значение:
-
true— событие не участвует в троттлинге. -
false— событие участвует в троттлинге.
Пример правила исключения из троттлинга
.metadata."evo.space/space-id" == "space-1"Пример выше означает, что логи из пространства с ID
space-1не будут участвовать в механизме троттлинга.По умолчанию параметр равен
true. Это означает, что при подсчете порога событий никакие логи в группе не участвуют в механизме троттлинга. -
Дедупликация событий
Дедупликация событий — механизм, позволяющий обнаруживать и удалять дублирующиеся события (дубликаты). Дубликатами считаются логи, у которых совпадают значения следующих полей:
-
timestamp— метка времени. -
message— сообщение. -
host— идентификатор хоста, на котором произошло событие. -
metadata."evo.space/workload-id"— ID сервиса.
Удаление дубликатов происходит следующим образом:
-
Система проверяет, есть ли запись о логе в кэше:
-
Если записи нет, то лог считается уникальным и добавляется в кэш.
-
Если запись есть, то лог считается дубликатом и отбрасывается.
-
-
Если кэш переполнен, система освобождает место для новых записей, удаляя старые.
Таким образом, пока кэш не заполнен, гарантируется отсутствие дубликатов логов. Количество записей, которые могут храниться в кэше, задается в параметре Размер кэша дедупликации.
По умолчанию параметр равен 1. Это означает, что в кэше может одновременно храниться только одна запись, то есть дедупликация не происходит.
Была ли полезна эта страница?