Описание параметров
Описание параметров плагина process_exporter.
Параметры запуска экспортера и сбора метрик с него
Basic Auth Password
Пароль пользователя BasicAuth для доступа к экспортеру.
Только запись.
Значение по умолчанию: skala-r.
Basic Auth Username
Имя пользователя BasicAuth для доступа к экспортеру.
Значение по умолчанию: vision.
Children
Группировка дочерних процессов в метриках родительского процесса. Дочерние процессы, которые не принадлежат своей собственной группе (не выделены в отдельную сущность в настройке Plugin Configuration), будут добавлены к группе родительского процесса.
Значение по умолчанию: True (группировка включена).
Plugin Configuration
Параметры сбора метрик в формате YAML.
Типовая структура:
process_names:
- name: "{{.Comm}}"
cmdline:
- '.+'
Каждый элемент в process_names должен содержать один или несколько селекторов:
-
comm.Сравнивается с базовым именем исполняемого файла (второе поле в
/proc/<pid>/stat). Это имя обрезается до 15 символов и не может быть изменено программой. -
exe.Сравнивается с
argv[0](первый аргумент командной строки). Если вexeнет слэшей (/), то сравнивается только базовое имя. Если слэши есть, тоargv[0]должен совпасть полностью.Примерprocess_names: - exe: - postgres - /usr/local/bin/prometheus -
cmdline.Применяет регулярные выражения ко всей командной строке (
/proc/<pid>/cmdline). Все регулярные выражения должны совпасть. Если в регулярном выражении есть группы захвата (capturing groups), они должны быть именованными (с использованием?P<name>), чтобы их можно было использовать в переменной{{.Matches}}.
Для comm и exe список строк работает как логическое «ИЛИ».
Если процесс совпадает с любой из строк, он добавляется в группу.
Для cmdline список регулярных выражений работает как логическое «И».
Все регулярные выражения должны совпасть.
Для извлечения процессов и их группировки (используются в name, попадут в groupname) имеются следующие шаблоны:
-
{{.Comm}}— базовое имя исполняемого файла (второе поле в/proc/<pid>/stat).Если полный путь к исполняемому файлу
/usr/bin/python3, то{{.Comm}}будетpython3. -
{{.ExeBase}}— базовое имя исполняемого файла (аналогично{{.Comm}}, но может отличаться в зависимости от реализации).Для
/usr/bin/python3значение{{.ExeBase}}будет равноpython3. -
{{.ExeFull}}— полный путь к исполняемому файлу, например,/usr/bin/python3. -
{{.Username}}— имя пользователя, с привилегиями которого запущен процесс, например,root,vision. -
{{.Matches}}— карта (map), которая содержит все совпадения, полученные в результате применения регулярных выражений к командной строке процесса (/proc/<pid>/cmdline).Если вы используете регулярное выражение для извлечения аргументов командной строки, то
{{.Matches}}будет содержать эти аргументы. -
{{.PID}}— идентификатор процесса.Использование {{.PID}}в шаблонах может привести к созданию групп, содержащих только один процесс, что может привести к высокой кардинальности метрик (большому количеству уникальных метрик), что не рекомендуется для Prometheus. -
{{.StartTime}}— время начала процесса.Использование {{.StartTime}}в шаблонах может привести к высокой кардинальности, так как время начала процесса уникально для каждого процесса. -
{{.Cgroups}}— информация о cgroups процесса (если поддерживается системой). Например, если процесс запущен в Docker-контейнере,{{.Cgroups}}может содержать информацию о контейнере.
process_names:
- name: "{{.ExeBase}}"
exe:
- nginx
cmdline:
- '^n'
По умолчанию используется конфигурация, при которой плагин собирает метрики всех процессов:
process_names:
- name: "{{.Comm}}"
cmdline:
- '.+'
Recheck
По умолчанию имена процессов проверяются только при первом обнаружении процесса. Если эта настройка включена, имена процессов перепроверяются при каждом сборе метрик. Если процесс изменил своё имя, он будет перегруппирован в соответствии с новым именем.
Значение по умолчанию: False (выключен).
Recheck Duration
Продолжительность пересмотра имён после запуска плагина.
Период времени.
Значение по умолчанию: 0.
Scrape Interval
Периодичность опроса экспортера.
Период времени.
Значение по умолчанию: 15s (15 секунд).
Scrape Timeout
Таймаут опроса таргетов.
| Значение не должно превышать значение параметра Scrape Interval. |
Период времени.
Значение по умолчанию: 10s (10 секунд).
Threads
Группировка метрик по потокам.
Метрики будут собираться не только для групп процессов, но и для отдельных потоков этих процессов.
Если настройка включена, активируются метрики namedprocess_namegroup_thread_*.
В противном случае они будут отсутствовать.
Значение по умолчанию: True (включена).
Tls Cert File
Путь к файлу сертификата на узле, где установлен плагин, для запуска экспортера.
Значение по умолчанию: /opt/skala-r/vision/cert/components_default.crt.
Tls Insecure Skip Verify
Пропуск проверки сертификата при подключении агента к источнику метрик.
Значение по умолчанию: False (проверка сертификата включена).