Открыть меню
Открыть персональное меню
Вы не представились системе
Your IP address will be publicly visible if you make any edits.

Полный мониторинг PHP: различия между версиями

Материал из Документация АппОптима
(Новая страница: «Вы можете отслеживать PHP в своих средах Windows (IIS / Apache) - теперь в Windows доступен полный монит...»)
 
Нет описания правки
 
(не показаны 4 промежуточные версии 3 участников)
Строка 1: Строка 1:
'''''[[Поддержка технологий]] / [[PHP]] / Полный мониторинг PHP'''''
Вы можете отслеживать PHP в своих средах Windows (IIS / Apache) - теперь в Windows доступен полный мониторинг для приложений Apache mod_php и PHP CGI.
Вы можете отслеживать PHP в своих средах Windows (IIS / Apache) - теперь в Windows доступен полный мониторинг для приложений Apache mod_php и PHP CGI.


== Включение мониторинга PHP            ==
== Включение мониторинга PHP            ==
Включение мониторинга PHP в Dynatrace
Включение мониторинга PHP в АппОптима
 
# В меню АппОптима перейдите в «Настройки» и выберите «Мониторинг»> «Контролируемые технологии».
# На вкладке Поддерживаемые технологии найдите PHP и откройте его для редактирования.
# Включите настройки, необходимые для вашего мониторинга:
#* Мониторинг PHP на каждом хосте Этот переключатель включает мониторинг PHP на всех хостах. Чтобы контролировать подмножество ваших хостов, выключите этот переключатель, а затем включите мониторинг PHP на выбранных хостах.
#* Включить процессы PHP FastCGI, запускаемые HTTP-сервером Apache на каждом хосте. Этот параметр постоянно включен, начиная с версии ЕдиныйАгент 1.191.
#* Включить мониторинг PHP x на каждом хосте. Если доступна версия Early Adopter, вы можете попробовать ее с помощью этого переключателя.
'''Важно''': Убедитесь, что ваша среда мониторинга соответствует требованиям, указанным под переключателем.
 
== Запуск PHP на веб-сервере ==
Наиболее распространенные способы запуска PHP на веб-сервере:
 
* <code>mod_PHP</code> — значение по умолчанию на ванильных HTTP-серверах Apache. PHP запускается как модуль Apache, что означает, что запрос PHP запускается в рамках процесса Apache. Благодаря этому PHP работает хорошо, но гибкость ограничена конфигурацией Apache, разрешениями, ограничениями и т. д.
* <code>PHP_FPM</code> — FastCGI Process Manager (FPM) использует управление пулом для оптимизации производительности. Каждый пул действует как автономный экземпляр PHP, что позволяет создавать независимую конфигурацию для каждого пула, что обеспечивает детальный контроль и большую гибкость. Это самый быстрый метод запуска PHP.
 
== Мониторинг PHP-CLI ==
<code>early adopter</code>
 
Мониторинг PHP-CLI обеспечивает глубокий мониторинг ваших приложений PHP-CLI. Это обеспечивает видимость базы данных, поддержку многопоточности, мониторинг исходящих вызовов и многое другое, поэтому вы можете:
 
* Проанализировать производительность вашего приложения PHP-CLI
* Легко найти узкие места в вашем коде
* Узнать, почему связь с базой данных занимает столько времени
* Узнать, правильно ли приложение управляет памятью
 
=== Полная видимость вашего приложения PHP-CLI на уровне кода ===
С мониторингом PHP-CLI вы получаете:
 
* Потокобезопасная и непотокобезопасная поддержка PHP-CLI для всех версий PHP, поддерживаемых АппОптима.
* Все существующие функции ЕдиныйАгент PHP и функции только CLI:
** поддержка <code>pthreads</code> для потокобезопасности PHP-CLI
** Горячие точки метода с использованием сэмплирования окружающей среды
** Поддержка атрибутов запроса
** Глубокий мониторинг (после включения обнаружения пользовательских служб)
 
=== Требования для мониторинга PHP-CLI ===
 
* ЕдиныйАгент версии 1.181+ установлен на всех отслеживаемых хостах.
* Мониторинг PHP NG включен (Чтобы проверить или изменить этот параметр)
*# Перейдите в «Настройки» и выберите «Мониторинг» > «Отслеживаемые технологии».
*# Найдите '''PHP''' и откройте его для редактирования.
 
=== Ограничения мониторинга PHP-CLI ===
 
* Внедрение ЕдиногоАгента вызывает небольшие накладные расходы при запуске процесса. Его не следует включать для кратковременных процессов.
* Разветвление внутри процесса <code>php-cli</code> не поддерживается. В этом сценарии агент становится неактивным.
* Инструментарий процессов <code>php-cli</code> с кодом, указанным в качестве аргумента командной строки, не поддерживается.
* Инструментарий <code>pthreads</code> поддерживается от PHP 7.2 до PHP 7.3. Более ранние версии PHP не являются полностью потокобезопасными и не должны использоваться с <code>pthreads</code>.
 
=== Начало работы с мониторингом PHP-CLI ===
Чтобы включить глубокий мониторинг ваших приложений PHP-CLI
 
1. В меню АппОптима перейдите в «Настройки» и выберите «Процессы и контейнеры» > «Пользовательские правила мониторинга процессов».
 
2. Выберите Добавить пользовательское правило, чтобы начать определение правила мониторинга процесса для PHP-CLI.
 
* Вы можете построить правило на основе таких условий, как:
** EXE-имя
** EXE-путь
** PHP-скрипт
** Рабочий каталог PHP
 
Чтобы узнать больше о правилах мониторинга процессов, см.
 
Настроить мониторинг группы процессов
 
3. Выберите '''Сохранить изменения'''. Ваше правило указано на странице Пользовательские правила мониторинга процессов.
 
4. При необходимости добавьте дополнительные правила.
 
5. Перезапустите приложение PHP.
 
=== Как заставить мониторинг PHP-CLI работать на вас ===
 
==== Получите полное представление PHP о соединениях с базами данных и многом другом ====
Включив обнаружение пользовательских служб, вы получаете глубокий мониторинг, включая полную информацию PHP о подключениях к базе данных, внешних вызовах и pthreads.
 
==== Посмотрите, правильно ли ваше приложение управляет памятью ====
Благодаря сборке мусора и метрикам OPcache у вас есть представление о том, как ваше приложение управляет памятью. Вы также получаете готовые подробные метрики процессов, включая использование ЦП, использование памяти, рабочие процессы и информацию о вводе-выводе.


# In the Dynatrace menu, go to '''Settings''' and select '''Monitoring''' > '''Monitored technologies'''.
==== Найдите наиболее ресурсоемкие методы с помощью горячих точек методов ====
# On the '''Supported technologies''' tab, find '''PHP''' and open it for editing.
Вы можете легко найти и исправить методы, потребляющие больше всего ресурсов ЦП, в своем PHP-коде.
# Enable the settings you need for your monitoring:
#* '''Monitor PHP on every host'''  This switch enables PHP monitoring on all hosts. To monitor a subset of your hosts, turn this switch off and then enable PHP monitoring on selected hosts.
#* '''Enable FastCGI PHP processes launched by Apache HTTP Server on every host'''  This setting is permanently enabled starting with OneAgent version 1.191.
#* '''Enable PHP ''x'' monitoring on every host'''  If an Early Adopter release is available, this switch is where you can choose to try it.  '''Important:''' Verify that your monitoring environment meets the requirements stated under the switch.

Текущая версия от 12:46, 8 ноября 2024

Поддержка технологий / PHP / Полный мониторинг PHP

Вы можете отслеживать PHP в своих средах Windows (IIS / Apache) - теперь в Windows доступен полный мониторинг для приложений Apache mod_php и PHP CGI.

Включение мониторинга PHP

Включение мониторинга PHP в АппОптима

  1. В меню АппОптима перейдите в «Настройки» и выберите «Мониторинг»> «Контролируемые технологии».
  2. На вкладке Поддерживаемые технологии найдите PHP и откройте его для редактирования.
  3. Включите настройки, необходимые для вашего мониторинга:
    • Мониторинг PHP на каждом хосте Этот переключатель включает мониторинг PHP на всех хостах. Чтобы контролировать подмножество ваших хостов, выключите этот переключатель, а затем включите мониторинг PHP на выбранных хостах.
    • Включить процессы PHP FastCGI, запускаемые HTTP-сервером Apache на каждом хосте. Этот параметр постоянно включен, начиная с версии ЕдиныйАгент 1.191.
    • Включить мониторинг PHP x на каждом хосте. Если доступна версия Early Adopter, вы можете попробовать ее с помощью этого переключателя.

Важно: Убедитесь, что ваша среда мониторинга соответствует требованиям, указанным под переключателем.

Запуск PHP на веб-сервере

Наиболее распространенные способы запуска PHP на веб-сервере:

  • mod_PHP — значение по умолчанию на ванильных HTTP-серверах Apache. PHP запускается как модуль Apache, что означает, что запрос PHP запускается в рамках процесса Apache. Благодаря этому PHP работает хорошо, но гибкость ограничена конфигурацией Apache, разрешениями, ограничениями и т. д.
  • PHP_FPM — FastCGI Process Manager (FPM) использует управление пулом для оптимизации производительности. Каждый пул действует как автономный экземпляр PHP, что позволяет создавать независимую конфигурацию для каждого пула, что обеспечивает детальный контроль и большую гибкость. Это самый быстрый метод запуска PHP.

Мониторинг PHP-CLI

early adopter

Мониторинг PHP-CLI обеспечивает глубокий мониторинг ваших приложений PHP-CLI. Это обеспечивает видимость базы данных, поддержку многопоточности, мониторинг исходящих вызовов и многое другое, поэтому вы можете:

  • Проанализировать производительность вашего приложения PHP-CLI
  • Легко найти узкие места в вашем коде
  • Узнать, почему связь с базой данных занимает столько времени
  • Узнать, правильно ли приложение управляет памятью

Полная видимость вашего приложения PHP-CLI на уровне кода

С мониторингом PHP-CLI вы получаете:

  • Потокобезопасная и непотокобезопасная поддержка PHP-CLI для всех версий PHP, поддерживаемых АппОптима.
  • Все существующие функции ЕдиныйАгент PHP и функции только CLI:
    • поддержка pthreads для потокобезопасности PHP-CLI
    • Горячие точки метода с использованием сэмплирования окружающей среды
    • Поддержка атрибутов запроса
    • Глубокий мониторинг (после включения обнаружения пользовательских служб)

Требования для мониторинга PHP-CLI

  • ЕдиныйАгент версии 1.181+ установлен на всех отслеживаемых хостах.
  • Мониторинг PHP NG включен (Чтобы проверить или изменить этот параметр)
    1. Перейдите в «Настройки» и выберите «Мониторинг» > «Отслеживаемые технологии».
    2. Найдите PHP и откройте его для редактирования.

Ограничения мониторинга PHP-CLI

  • Внедрение ЕдиногоАгента вызывает небольшие накладные расходы при запуске процесса. Его не следует включать для кратковременных процессов.
  • Разветвление внутри процесса php-cli не поддерживается. В этом сценарии агент становится неактивным.
  • Инструментарий процессов php-cli с кодом, указанным в качестве аргумента командной строки, не поддерживается.
  • Инструментарий pthreads поддерживается от PHP 7.2 до PHP 7.3. Более ранние версии PHP не являются полностью потокобезопасными и не должны использоваться с pthreads.

Начало работы с мониторингом PHP-CLI

Чтобы включить глубокий мониторинг ваших приложений PHP-CLI

1. В меню АппОптима перейдите в «Настройки» и выберите «Процессы и контейнеры» > «Пользовательские правила мониторинга процессов».

2. Выберите Добавить пользовательское правило, чтобы начать определение правила мониторинга процесса для PHP-CLI.

  • Вы можете построить правило на основе таких условий, как:
    • EXE-имя
    • EXE-путь
    • PHP-скрипт
    • Рабочий каталог PHP

Чтобы узнать больше о правилах мониторинга процессов, см.

Настроить мониторинг группы процессов

3. Выберите Сохранить изменения. Ваше правило указано на странице Пользовательские правила мониторинга процессов.

4. При необходимости добавьте дополнительные правила.

5. Перезапустите приложение PHP.

Как заставить мониторинг PHP-CLI работать на вас

Получите полное представление PHP о соединениях с базами данных и многом другом

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

Посмотрите, правильно ли ваше приложение управляет памятью

Благодаря сборке мусора и метрикам OPcache у вас есть представление о том, как ваше приложение управляет памятью. Вы также получаете готовые подробные метрики процессов, включая использование ЦП, использование памяти, рабочие процессы и информацию о вводе-выводе.

Найдите наиболее ресурсоемкие методы с помощью горячих точек методов

Вы можете легко найти и исправить методы, потребляющие больше всего ресурсов ЦП, в своем PHP-коде.