ENetrebin (обсуждение | вклад) (Новая страница: «Dynatrace определяет, какие процессы являются частью одних и тех же групп процессов, с помощь...») |
Нет описания правки |
||
(не показаны 2 промежуточные версии 1 участника) | |||
Строка 1: | Строка 1: | ||
'''''[[Применение АппОптима]] / Группы процессов / Конфигурация / Обнаружение группы процессов''''' | |||
АппОптима определяет, какие процессы являются частью одних и тех же групп процессов, с помощью набора правил обнаружения по умолчанию. | |||
Вы можете изменить структуру групп процессов по умолчанию, изменив логику обнаружения групп процессов по умолчанию в: | Вы можете изменить структуру групп процессов по умолчанию, изменив логику обнаружения групп процессов по умолчанию в: | ||
Строка 6: | Строка 8: | ||
** На странице Встроенные правила обнаружения вы можете включить или отключить переключатели обнаружения определенных групп процессов. Наведите указатель мыши на значок информации справа от каждого переключателя, чтобы узнать подробности. | ** На странице Встроенные правила обнаружения вы можете включить или отключить переключатели обнаружения определенных групп процессов. Наведите указатель мыши на значок информации справа от каждого переключателя, чтобы узнать подробности. | ||
** На страницах Простые правила обнаружения и Расширенные правила обнаружения вы можете добавить свои собственные правила обнаружения групп процессов, которые переопределяют правила по умолчанию. | ** На страницах Простые правила обнаружения и Расширенные правила обнаружения вы можете добавить свои собственные правила обнаружения групп процессов, которые переопределяют правила по умолчанию. | ||
** На странице « Декларативное группирование процессов» вы можете отслеживать определенные процессы технологии, неизвестной | ** На странице « Декларативное группирование процессов» вы можете отслеживать определенные процессы технологии, неизвестной АппОптима. | ||
* Настройки > Процессы и контейнеры > Контейнеры > Обнаружение облачных приложений и рабочих нагрузок , где вы можете определить правила для объединения похожих рабочих нагрузок Kubernetes в группы процессов. | * Настройки > Процессы и контейнеры > Контейнеры > Обнаружение облачных приложений и рабочих нагрузок , где вы можете определить правила для объединения похожих рабочих нагрузок Kubernetes в группы процессов. | ||
Строка 14: | Строка 16: | ||
== Простые правила обнаружения == | == Простые правила обнаружения == | ||
Простые правила обнаружения групп процессов позволяют адаптировать логику обнаружения групп процессов по умолчанию для глубоко отслеживаемых процессов с помощью системных свойств Java или переменных среды . Вы можете создать простое правило обнаружения с помощью веб-интерфейса | Простые правила обнаружения групп процессов позволяют адаптировать логику обнаружения групп процессов по умолчанию для глубоко отслеживаемых процессов с помощью системных свойств Java или переменных среды . Вы можете создать простое правило обнаружения с помощью веб-интерфейса АппОптима или API настроек — простое правило обнаружения см. в разделе Пример полезной нагрузки JSON . | ||
Простые правила обнаружения групп процессов эффективны только в том случае, если | Простые правила обнаружения групп процессов эффективны только в том случае, если ЕдиныйАгент установлен на ваших хостах или образах для процессов, которые можно тщательно отслеживать. | ||
Примечание. Эта функция может разделить группу процессов только на несколько частей. Используйте его, если у вас есть разные развертывания в одной и той же группе процессов. | Примечание. Эта функция может разделить группу процессов только на несколько частей. Используйте его, если у вас есть разные развертывания в одной и той же группе процессов. | ||
Чтобы создать простое правило обнаружения в веб-интерфейсе | Чтобы создать простое правило обнаружения в веб-интерфейсе АппОптима | ||
# В меню | # В меню АппОптима перейдите в « Настройки » . | ||
# Выберите Процессы и контейнеры > Простые правила обнаружения . | # Выберите Процессы и контейнеры > Простые правила обнаружения . | ||
# Выберите Добавить элемент . | # Выберите Добавить элемент . | ||
# В качестве источника свойства укажите системное свойство Java или переменную среды . | # В качестве источника свойства укажите системное свойство Java или переменную среды . | ||
# Установите Идентификатор группы на значение, которое | # Установите Идентификатор группы на значение, которое АппОптима будет использовать для идентификации групп процессов. | ||
# по желаниюУстановите идентификатор экземпляра на значение, которое | # по желаниюУстановите идентификатор экземпляра на значение, которое АппОптима будет использовать для идентификации конкретных узлов кластера в группе процессов. Примечание. Этот параметр полезен, если в настройке группы процессов есть определенные имена для каждого узла. Если вы не уверены, оставьте поле пустым. Значение по умолчанию — один узел на хост. | ||
# по желаниюЗадайте для параметра Ограничить это правило определенными типами процессов тип процесса, к которому вы хотите применить правило. | # по желаниюЗадайте для параметра Ограничить это правило определенными типами процессов тип процесса, к которому вы хотите применить правило. | ||
# Выберите Сохранить изменения . | # Выберите Сохранить изменения . | ||
=== Системные свойства Java === | === Системные свойства Java === | ||
С помощью этой опции вы можете создавать более мелкие группы процессов Java. Системное свойство Java должно быть частью командной строки Java, чтобы | С помощью этой опции вы можете создавать более мелкие группы процессов Java. Системное свойство Java должно быть частью командной строки Java, чтобы ЕдиныйАгент мог его обнаружить. Это может быть либо существующее системное свойство, которое уже используется вашим приложением (например, три разных <code>jetty.home</code>значения для трех разных кластеров Solr), либо вы можете добавить новое системное свойство. Пока системное свойство доступно в командной строке, АппОптима может его использовать. | ||
=== Переменные среды === | === Переменные среды === | ||
Строка 41: | Строка 43: | ||
Пример: | Пример: | ||
Предположим, у вас есть два почти идентичных развертывания HTTP-сервера Apache, которые находятся в одном каталоге развертывания, но на разных хостах. По умолчанию | Предположим, у вас есть два почти идентичных развертывания HTTP-сервера Apache, которые находятся в одном каталоге развертывания, но на разных хостах. По умолчанию АппОптима не может различить два развертывания, поскольку у них нет уникальных характеристик, которые можно было бы использовать для идентификации. Теперь рассмотрим следующее правило: <code>Apache process identified by environment variable MY_PG_NAME</code>. | ||
Любой HTTP-процесс Apache, который включает в себя переменную среды <code>MY_PG_NAME</code>, будет использовать содержимое «MY_PG_NAME» как в качестве идентификатора, так и в качестве имени по умолчанию. В этом сценарии | Любой HTTP-процесс Apache, который включает в себя переменную среды <code>MY_PG_NAME</code>, будет использовать содержимое «MY_PG_NAME» как в качестве идентификатора, так и в качестве имени по умолчанию. В этом сценарии АппОптима может отдельно идентифицировать и называть каждое развертывание, назначив переменную среды <code>MY_PG_NAME=АппОптима.com-production</code>одному развертыванию и <code>MY_PG_NAME=АппОптима.com-staging</code>другому развертыванию. | ||
== Расширенные правила обнаружения == | == Расширенные правила обнаружения == | ||
Расширенные правила обнаружения групп процессов позволяют создавать группу процессов путем объединения процессов из разных групп и позволяют адаптировать логику обнаружения для глубоко отслеживаемых процессов, используя свойства, автоматически определяемые | Расширенные правила обнаружения групп процессов позволяют создавать группу процессов путем объединения процессов из разных групп и позволяют адаптировать логику обнаружения для глубоко отслеживаемых процессов, используя свойства, автоматически определяемые ЕдиныйАгент во время запуска процесса. Вы можете создать расширенное правило обнаружения с помощью веб-интерфейса АппОптима или API настроек — см. Пример полезной нагрузки JSON для расширенного правила обнаружения . | ||
Расширенные правила обнаружения групп процессов эффективны только в том случае, если | Расширенные правила обнаружения групп процессов эффективны только в том случае, если ЕдиныйАгент установлен на ваших хостах или образах для процессов, которые можно тщательно отслеживать. | ||
Чтобы создать расширенное правило обнаружения в веб-интерфейсе | Чтобы создать расширенное правило обнаружения в веб-интерфейсе АппОптима | ||
# В меню | # В меню АппОптима перейдите в « Настройки » . | ||
# Выберите Процессы и контейнеры > Расширенные правила обнаружения . | # Выберите Процессы и контейнеры > Расширенные правила обнаружения . | ||
# Выберите Добавить элемент . | # Выберите Добавить элемент . | ||
Строка 64: | Строка 66: | ||
==== Когда включать эту опцию ==== | ==== Когда включать эту опцию ==== | ||
Предположим, у вас есть группа процессов с несколькими процессами. Каждый процесс одновременно выполняет одну и ту же функцию для разных клиентов, одновременно использующих ваше приложение. Хотя каждый экземпляр процесса имеет одно и то же имя, каждый экземпляр использует уникальную пользовательскую конфигурацию, о которой у | Предположим, у вас есть группа процессов с несколькими процессами. Каждый процесс одновременно выполняет одну и ту же функцию для разных клиентов, одновременно использующих ваше приложение. Хотя каждый экземпляр процесса имеет одно и то же имя, каждый экземпляр использует уникальную пользовательскую конфигурацию, о которой у АппОптима нет никакой информации. Поэтому АппОптима объединяет все связанные процессы в единую группу процессов, чтобы облегчить мониторинг. | ||
В случаях, когда такая группировка неадекватна, у вас есть возможность определить правила обнаружения групп процессов, учитывающие специфические для клиента детали. Такие детали можно извлечь из вашей уникальной схемы развертывания. Если у вас есть структура каталогов, включающая идентификатор клиента (например, <code>/opt/MyCustomerBasedApp/<CustomerId>/Service/MyService</code>), и структура каталогов одинакова на всех ваших хостах, вы можете создать правило обнаружения группы процессов для конкретного клиента, которое работает для всех экземпляров процессов. | В случаях, когда такая группировка неадекватна, у вас есть возможность определить правила обнаружения групп процессов, учитывающие специфические для клиента детали. Такие детали можно извлечь из вашей уникальной схемы развертывания. Если у вас есть структура каталогов, включающая идентификатор клиента (например, <code>/opt/MyCustomerBasedApp/<CustomerId>/Service/MyService</code>), и структура каталогов одинакова на всех ваших хостах, вы можете создать правило обнаружения группы процессов для конкретного клиента, которое работает для всех экземпляров процессов. | ||
Строка 73: | Строка 75: | ||
==== Когда отключать эту опцию ==== | ==== Когда отключать эту опцию ==== | ||
Вы можете отключить параметр автономных правил , если в одной среде вы хотите различать отдельные объекты (например, производство и тестирование). В этом случае вы можете использовать обнаружение | Вы можете отключить параметр автономных правил , если в одной среде вы хотите различать отдельные объекты (например, производство и тестирование). В этом случае вы можете использовать обнаружение АппОптима по умолчанию, но улучшить его, используя собственные знания о настройке развертывания. | ||
У вас есть возможность определить второе свойство, которое идентифицирует конкретные экземпляры процесса (или узлы кластера) в группе процессов. Это полезно, если в настройке группы процессов есть определенные имена для каждого экземпляра. Если вы не уверены, оставьте поле пустым. Значение по умолчанию — один узел на хост. | У вас есть возможность определить второе свойство, которое идентифицирует конкретные экземпляры процесса (или узлы кластера) в группе процессов. Это полезно, если в настройке группы процессов есть определенные имена для каждого экземпляра. Если вы не уверены, оставьте поле пустым. Значение по умолчанию — один узел на хост. | ||
Строка 80: | Строка 82: | ||
* Если ни один из вышеперечисленных вариантов обнаружения группы процессов не работает, вы можете использовать переменную среды DT_CLUSTER_ID , чтобы сгруппировать все процессы, которые имеют одинаковое значение для этой переменной. Все процессы, найденные в среде мониторинга, которые имеют один и тот же идентификатор кластера, рассматриваются как члены одной и той же группы процессов и разделяются только хостами, на которых они работают (например, кластеры веб-серверов Apache, которые принадлежат друг другу и размещают один и тот же сайт). ). Убедитесь, что вы устанавливаете переменную DT_CLUSTER_ID только для каждого процесса, а не для всей системы! Если вы установите эту переменную для всей системы, все процессы могут быть сгруппированы в одну группу процессов для мониторинга. Это нежелательно и не поддерживается. | * Если ни один из вышеперечисленных вариантов обнаружения группы процессов не работает, вы можете использовать переменную среды DT_CLUSTER_ID , чтобы сгруппировать все процессы, которые имеют одинаковое значение для этой переменной. Все процессы, найденные в среде мониторинга, которые имеют один и тот же идентификатор кластера, рассматриваются как члены одной и той же группы процессов и разделяются только хостами, на которых они работают (например, кластеры веб-серверов Apache, которые принадлежат друг другу и размещают один и тот же сайт). ). Убедитесь, что вы устанавливаете переменную DT_CLUSTER_ID только для каждого процесса, а не для всей системы! Если вы установите эту переменную для всей системы, все процессы могут быть сгруппированы в одну группу процессов для мониторинга. Это нежелательно и не поддерживается. | ||
* Чтобы идентифицировать узлы в кластере процессов, работающие на одном хосте, используйте переменную среды DT_NODE_ID . Это сообщает | * Чтобы идентифицировать узлы в кластере процессов, работающие на одном хосте, используйте переменную среды DT_NODE_ID . Это сообщает АппОптима, какие процессы следует рассматривать как отдельные экземпляры группы процессов. | ||
== Декларативная группировка процессов == | == Декларативная группировка процессов == | ||
ЕдиныйАгент версии 1.217+ | |||
В больших динамических средах количество процессов, запущенных на ваших хостах, может стать огромным. По этой причине | В больших динамических средах количество процессов, запущенных на ваших хостах, может стать огромным. По этой причине АппОптима автоматически отслеживает важные типы групп процессов — группы процессов, использующие известную технологию или потребляющие значительные ресурсы. | ||
Однако | Однако АппОптима также предоставляет возможность мониторинга определенных процессов, не подпадающих ни под одну из этих двух категорий. Это означает, что вы можете отслеживать процессы типа технологии, неизвестного АппОптима, которые не потребляют значительных ресурсов. | ||
Декларативное группирование работает только для процессов, которые не отслеживаются глубоко. | Декларативное группирование работает только для процессов, которые не отслеживаются глубоко. | ||
Чтобы создать такую группу процессов, используйте функцию декларативной группировки процессов, которая позволяет добавлять подробные правила для соответствия любой конкретной группе процессов. Декларативное группирование процессов основано на платформе Settings 2.0, поэтому вы можете создавать правила с помощью веб-интерфейса | Чтобы создать такую группу процессов, используйте функцию декларативной группировки процессов, которая позволяет добавлять подробные правила для соответствия любой конкретной группе процессов. Декларативное группирование процессов основано на платформе Settings 2.0, поэтому вы можете создавать правила с помощью веб-интерфейса АппОптима или API настроек — см. Пример полезной нагрузки JSON для конфигурации декларативной группы процессов . | ||
Чтобы создать группу процессов с помощью веб-интерфейса | Чтобы создать группу процессов с помощью веб-интерфейса АппОптима | ||
# В меню | # В меню АппОптима перейдите в « Настройки » . | ||
# Выберите Процессы и контейнеры > Декларативное группирование процессов . | # Выберите Процессы и контейнеры > Декларативное группирование процессов . | ||
# Выберите Добавить отслеживаемую технологию . Технология представляет собой логический контейнер для группировки правил обнаружения. Она будет видна как основная технология группы процессов. | # Выберите Добавить отслеживаемую технологию . Технология представляет собой логический контейнер для группировки правил обнаружения. Она будет видна как основная технология группы процессов. | ||
# Выберите Добавить группу процессов . Группа процессов может включать несколько отдельных правил обнаружения. Группа процессов идентифицируется, если совпадают все отдельные правила обнаружения. | # Выберите Добавить группу процессов . Группа процессов может включать несколько отдельных правил обнаружения. Группа процессов идентифицируется, если совпадают все отдельные правила обнаружения. | ||
# Введите идентификатор группы процессов . Идентификатор группы процессов — это уникальная строка, позволяющая | # Введите идентификатор группы процессов . Идентификатор группы процессов — это уникальная строка, позволяющая АппОптима идентифицировать группу процессов. | ||
# В разделе Отображаемое имя группы процессов выберите имя группы процессов. | # В разделе Отображаемое имя группы процессов выберите имя группы процессов. | ||
# Выберите Добавить правило обнаружения . | # Выберите Добавить правило обнаружения . | ||
Строка 110: | Строка 112: | ||
# Когда вы закончите определение всех правил, выберите Сохранить изменения . | # Когда вы закончите определение всех правил, выберите Сохранить изменения . | ||
После сохранения изменений | После сохранения изменений АппОптима автоматически обнаружит и отслеживает вновь определенную пользовательскую группу процессов на всех хостах — даже на тех хостах, которые запускаются после определения пользовательской группы процессов. | ||
=== Управление декларативной группировкой процессов === | === Управление декларативной группировкой процессов === | ||
Для управления декларативными группами процессов | Для управления декларативными группами процессов | ||
# В | # В АппОптима перейдите к декларативной группировке процессов для уровня, который вы настраиваете. Уровень хоста Уровень хост-группы Уровень окружающей среды | ||
# Определенные вами декларативные группы процессов отображаются в таблице под кнопкой Добавить отслеживаемую технологию . | # Определенные вами декларативные группы процессов отображаются в таблице под кнопкой Добавить отслеживаемую технологию . | ||
#* Чтобы прекратить мониторинг указанной группы процессов, отключите Enabled . | #* Чтобы прекратить мониторинг указанной группы процессов, отключите Enabled . | ||
Строка 136: | Строка 138: | ||
== Добавьте свою конфигурацию в Extensions 2.0 == | == Добавьте свою конфигурацию в Extensions 2.0 == | ||
Вы также можете прикрепить текущую конфигурацию к расширению Extensions 2.0 , чтобы ваше пользовательское расширение имело предопределенные правила группировки процессов. Добавьте свое определение в файл расширения YAML , как в этом примере: | Вы также можете прикрепить текущую конфигурацию к расширению Extensions 2.0 , чтобы ваше пользовательское расширение имело предопределенные правила группировки процессов. Добавьте свое определение в файл расширения YAML , как в этом примере: | ||
< | <--- | ||
name: custom:my-extension | name: custom:my-extension | ||
version: 1.0.0 | version: 1.0.0 | ||
minАппОптимаVersion: "1.218" | |||
author: | author: | ||
name: Joe Doe | name: Joe Doe |
Текущая версия от 15:00, 26 декабря 2024
Применение АппОптима / Группы процессов / Конфигурация / Обнаружение группы процессов
АппОптима определяет, какие процессы являются частью одних и тех же групп процессов, с помощью набора правил обнаружения по умолчанию.
Вы можете изменить структуру групп процессов по умолчанию, изменив логику обнаружения групп процессов по умолчанию в:
- Раздел « Настройки » > « Процессы и контейнеры » > « Обнаружение группы процессов» , который имеет следующие страницы:
- На странице Встроенные правила обнаружения вы можете включить или отключить переключатели обнаружения определенных групп процессов. Наведите указатель мыши на значок информации справа от каждого переключателя, чтобы узнать подробности.
- На страницах Простые правила обнаружения и Расширенные правила обнаружения вы можете добавить свои собственные правила обнаружения групп процессов, которые переопределяют правила по умолчанию.
- На странице « Декларативное группирование процессов» вы можете отслеживать определенные процессы технологии, неизвестной АппОптима.
- Настройки > Процессы и контейнеры > Контейнеры > Обнаружение облачных приложений и рабочих нагрузок , где вы можете определить правила для объединения похожих рабочих нагрузок Kubernetes в группы процессов.
- Параметры и правила обнаружения групп процессов требуют перезапуска ваших процессов, чтобы повлиять на то, как процессы идентифицируются и группируются.
- Параметры и правила обнаружения групп процессов влияют только на состав групп процессов. Если вы хотите изменить способ именования группы процессов, вы должны вместо этого использовать правила именования групп процессов .
- Также можно использовать группы хостов для разделения кластеров на разные группы процессов.
Простые правила обнаружения
Простые правила обнаружения групп процессов позволяют адаптировать логику обнаружения групп процессов по умолчанию для глубоко отслеживаемых процессов с помощью системных свойств Java или переменных среды . Вы можете создать простое правило обнаружения с помощью веб-интерфейса АппОптима или API настроек — простое правило обнаружения см. в разделе Пример полезной нагрузки JSON .
Простые правила обнаружения групп процессов эффективны только в том случае, если ЕдиныйАгент установлен на ваших хостах или образах для процессов, которые можно тщательно отслеживать.
Примечание. Эта функция может разделить группу процессов только на несколько частей. Используйте его, если у вас есть разные развертывания в одной и той же группе процессов.
Чтобы создать простое правило обнаружения в веб-интерфейсе АппОптима
- В меню АппОптима перейдите в « Настройки » .
- Выберите Процессы и контейнеры > Простые правила обнаружения .
- Выберите Добавить элемент .
- В качестве источника свойства укажите системное свойство Java или переменную среды .
- Установите Идентификатор группы на значение, которое АппОптима будет использовать для идентификации групп процессов.
- по желаниюУстановите идентификатор экземпляра на значение, которое АппОптима будет использовать для идентификации конкретных узлов кластера в группе процессов. Примечание. Этот параметр полезен, если в настройке группы процессов есть определенные имена для каждого узла. Если вы не уверены, оставьте поле пустым. Значение по умолчанию — один узел на хост.
- по желаниюЗадайте для параметра Ограничить это правило определенными типами процессов тип процесса, к которому вы хотите применить правило.
- Выберите Сохранить изменения .
Системные свойства Java
С помощью этой опции вы можете создавать более мелкие группы процессов Java. Системное свойство Java должно быть частью командной строки Java, чтобы ЕдиныйАгент мог его обнаружить. Это может быть либо существующее системное свойство, которое уже используется вашим приложением (например, три разных jetty.home
значения для трех разных кластеров Solr), либо вы можете добавить новое системное свойство. Пока системное свойство доступно в командной строке, АппОптима может его использовать.
Переменные среды
Этот параметр охватывает процессы как Java, так и не-Java, такие как NGINX, HTTP-сервер Apache, FPM/PHP, Node.js, IIS и .NET.
Переменные среды, которые вы выбираете в качестве идентификаторов группы процессов, должны существовать в пределах обнаруженных процессов. Идентификаторы также служат именами по умолчанию для обнаруженных групп процессов. Дополнительные сведения о том, как определить переменную среды для IIS или служб Windows, см. в разделе Определение собственных метаданных группы процессов .
Пример:
Предположим, у вас есть два почти идентичных развертывания HTTP-сервера Apache, которые находятся в одном каталоге развертывания, но на разных хостах. По умолчанию АппОптима не может различить два развертывания, поскольку у них нет уникальных характеристик, которые можно было бы использовать для идентификации. Теперь рассмотрим следующее правило: Apache process identified by environment variable MY_PG_NAME
.
Любой HTTP-процесс Apache, который включает в себя переменную среды MY_PG_NAME
, будет использовать содержимое «MY_PG_NAME» как в качестве идентификатора, так и в качестве имени по умолчанию. В этом сценарии АппОптима может отдельно идентифицировать и называть каждое развертывание, назначив переменную среды MY_PG_NAME=АппОптима.com-production
одному развертыванию и MY_PG_NAME=АппОптима.com-staging
другому развертыванию.
Расширенные правила обнаружения
Расширенные правила обнаружения групп процессов позволяют создавать группу процессов путем объединения процессов из разных групп и позволяют адаптировать логику обнаружения для глубоко отслеживаемых процессов, используя свойства, автоматически определяемые ЕдиныйАгент во время запуска процесса. Вы можете создать расширенное правило обнаружения с помощью веб-интерфейса АппОптима или API настроек — см. Пример полезной нагрузки JSON для расширенного правила обнаружения .
Расширенные правила обнаружения групп процессов эффективны только в том случае, если ЕдиныйАгент установлен на ваших хостах или образах для процессов, которые можно тщательно отслеживать.
Чтобы создать расширенное правило обнаружения в веб-интерфейсе АппОптима
- В меню АппОптима перейдите в « Настройки » .
- Выберите Процессы и контейнеры > Расширенные правила обнаружения .
- Выберите Добавить элемент .
- В разделе Обнаружение группы процессов укажите, к каким процессам должно применяться это правило. Например, в JAR-файл Java, содержащий файлы
ws-server.jar
. - В разделе Извлечение группы процессов выберите значение свойства, которое следует использовать при обнаружении группы процессов.
- Выберите, хотите ли вы, чтобы это правило было отдельным правилом . Примечание. Этот параметр не рекомендуется использовать в контейнерных средах, поскольку обо всем должно позаботиться стандартное обнаружение. Дополнительные сведения см. в разделе Автономные правила .
- В разделе Извлечение экземпляра процесса выберите, следует ли использовать определенные свойства для извлечения отдельных экземпляров процесса (узлов).
- Выберите Сохранить изменения .
Отдельные правила
Когда включать эту опцию
Предположим, у вас есть группа процессов с несколькими процессами. Каждый процесс одновременно выполняет одну и ту же функцию для разных клиентов, одновременно использующих ваше приложение. Хотя каждый экземпляр процесса имеет одно и то же имя, каждый экземпляр использует уникальную пользовательскую конфигурацию, о которой у АппОптима нет никакой информации. Поэтому АппОптима объединяет все связанные процессы в единую группу процессов, чтобы облегчить мониторинг.
В случаях, когда такая группировка неадекватна, у вас есть возможность определить правила обнаружения групп процессов, учитывающие специфические для клиента детали. Такие детали можно извлечь из вашей уникальной схемы развертывания. Если у вас есть структура каталогов, включающая идентификатор клиента (например, /opt/MyCustomerBasedApp/<CustomerId>/Service/MyService
), и структура каталогов одинакова на всех ваших хостах, вы можете создать правило обнаружения группы процессов для конкретного клиента, которое работает для всех экземпляров процессов.
Пример:
Вы можете создать правило, которое будет применяться к процессам, пути к исполняемым файлам которых содержат фразу MyCustomerBasedApp
. Для процессов, которые соответствуют этому требованию, строка между /MyCustomerBasedApp/
и /Service
внутри пути к исполняемому файлу извлекается и используется для уникальной идентификации каждого экземпляра процесса.
Когда отключать эту опцию
Вы можете отключить параметр автономных правил , если в одной среде вы хотите различать отдельные объекты (например, производство и тестирование). В этом случае вы можете использовать обнаружение АппОптима по умолчанию, но улучшить его, используя собственные знания о настройке развертывания.
У вас есть возможность определить второе свойство, которое идентифицирует конкретные экземпляры процесса (или узлы кластера) в группе процессов. Это полезно, если в настройке группы процессов есть определенные имена для каждого экземпляра. Если вы не уверены, оставьте поле пустым. Значение по умолчанию — один узел на хост.
Пример:
- Если ни один из вышеперечисленных вариантов обнаружения группы процессов не работает, вы можете использовать переменную среды DT_CLUSTER_ID , чтобы сгруппировать все процессы, которые имеют одинаковое значение для этой переменной. Все процессы, найденные в среде мониторинга, которые имеют один и тот же идентификатор кластера, рассматриваются как члены одной и той же группы процессов и разделяются только хостами, на которых они работают (например, кластеры веб-серверов Apache, которые принадлежат друг другу и размещают один и тот же сайт). ). Убедитесь, что вы устанавливаете переменную DT_CLUSTER_ID только для каждого процесса, а не для всей системы! Если вы установите эту переменную для всей системы, все процессы могут быть сгруппированы в одну группу процессов для мониторинга. Это нежелательно и не поддерживается.
- Чтобы идентифицировать узлы в кластере процессов, работающие на одном хосте, используйте переменную среды DT_NODE_ID . Это сообщает АппОптима, какие процессы следует рассматривать как отдельные экземпляры группы процессов.
Декларативная группировка процессов
ЕдиныйАгент версии 1.217+
В больших динамических средах количество процессов, запущенных на ваших хостах, может стать огромным. По этой причине АппОптима автоматически отслеживает важные типы групп процессов — группы процессов, использующие известную технологию или потребляющие значительные ресурсы.
Однако АппОптима также предоставляет возможность мониторинга определенных процессов, не подпадающих ни под одну из этих двух категорий. Это означает, что вы можете отслеживать процессы типа технологии, неизвестного АппОптима, которые не потребляют значительных ресурсов.
Декларативное группирование работает только для процессов, которые не отслеживаются глубоко.
Чтобы создать такую группу процессов, используйте функцию декларативной группировки процессов, которая позволяет добавлять подробные правила для соответствия любой конкретной группе процессов. Декларативное группирование процессов основано на платформе Settings 2.0, поэтому вы можете создавать правила с помощью веб-интерфейса АппОптима или API настроек — см. Пример полезной нагрузки JSON для конфигурации декларативной группы процессов .
Чтобы создать группу процессов с помощью веб-интерфейса АппОптима
- В меню АппОптима перейдите в « Настройки » .
- Выберите Процессы и контейнеры > Декларативное группирование процессов .
- Выберите Добавить отслеживаемую технологию . Технология представляет собой логический контейнер для группировки правил обнаружения. Она будет видна как основная технология группы процессов.
- Выберите Добавить группу процессов . Группа процессов может включать несколько отдельных правил обнаружения. Группа процессов идентифицируется, если совпадают все отдельные правила обнаружения.
- Введите идентификатор группы процессов . Идентификатор группы процессов — это уникальная строка, позволяющая АппОптима идентифицировать группу процессов.
- В разделе Отображаемое имя группы процессов выберите имя группы процессов.
- Выберите Добавить правило обнаружения .
- Выберите объект, для которого будет проверено ваше правило обнаружения: Аргумент командной строки , Имя исполняемого файла или Путь к исполняемому файлу . Примечание. Если вы добавите более одного правила обнаружения, процесс идентифицируется, если все правила обнаружения совпадают (соотношение И).
- Введите условие . Примечание: В зависимости от того, что вы хотите, чтобы ваше правило соответствовало, вы можете определить строку, которая:
- Начинается с – используйте
$prefix
квалификатор, например$prefix(/usr/sbin/keepalived)
- Заканчивается на – используйте
$suffix
квалификатор, например$suffix(keepalived)
- Равно — используйте
$eq
квалификатор, например$eq(-d)
- Содержит — используйте
$contains
квалификатор, например$contains(keepalived)
- Начинается с – используйте
- Когда вы закончите определение всех правил, выберите Сохранить изменения .
После сохранения изменений АппОптима автоматически обнаружит и отслеживает вновь определенную пользовательскую группу процессов на всех хостах — даже на тех хостах, которые запускаются после определения пользовательской группы процессов.
Управление декларативной группировкой процессов
Для управления декларативными группами процессов
- В АппОптима перейдите к декларативной группировке процессов для уровня, который вы настраиваете. Уровень хоста Уровень хост-группы Уровень окружающей среды
- Определенные вами декларативные группы процессов отображаются в таблице под кнопкой Добавить отслеживаемую технологию .
- Чтобы прекратить мониторинг указанной группы процессов, отключите Enabled .
- Чтобы удалить группу процессов из таблицы, выберите в столбце Удалить .
- Чтобы просмотреть и изменить сведения о группе процессов, выберите в столбце « Сведения ».
Простая настройка с помощью API настроек
Используя API настроек , вы можете легко
- Измените определение ваших групп процессов
- Настройте простое или расширенное правило обнаружения
- Настройка декларативного обнаружения группы процессов
Использование API настроек
- Создайте токен API и включите разрешение Запись настроек (
settings.write
). - Используйте конечную точку « Получить схему », чтобы узнать формат JSON, необходимый для публикации вашей конфигурации. Пример полезной нагрузки JSON для простого правила обнаружения Пример полезной нагрузки JSON для расширенного правила обнаружения Пример полезной нагрузки JSON для декларативной конфигурации группы процессов
- Используйте конечную точку публикации объекта для отправки конфигурации.
Добавьте свою конфигурацию в Extensions 2.0
Вы также можете прикрепить текущую конфигурацию к расширению Extensions 2.0 , чтобы ваше пользовательское расширение имело предопределенные правила группировки процессов. Добавьте свое определение в файл расширения YAML , как в этом примере:
<--- name: custom:my-extension version: 1.0.0 minАппОптимаVersion: "1.218" author: name: Joe Doe processes: - name: keepalived detection: - id: ext.keepalived processGroupName: keepalived rules: - property: executable condition: "$eq(keepalived)" - property: executablePath condition: "$prefix(/usr/sbin/keepalived)" - property: commandLine condition: "$eq(-d)"