trellis-newrelic-php
Trellis New Relic PHP Агента
Установите агента New Relic PHP на серверах Trellis.
Переменные ролей
# group_vars/<environment>/vault.yml
# Этот файл должен быть зашифрован. Смотрите: https://roots.io/trellis/docs/vault/
##########################################################################
# Лицензионный ключ New Relic
## См.: https://docs.newrelic.com/docs/accounts-partnerships/accounts/account-setup/license-key
vault_newrelic_license: xxxxxxxxxxx
# group_vars/<environment>/main.yml
###################################
# Указывает желаемое состояние пакета.
# `latest` гарантирует установку последней версии.
# `present` не обновляет, если уже установлено.
# Выборы: present|latest
# Значение по умолчанию: latest
newrelic_package_state: present
# Проверьте значения по умолчанию здесь: https://github.com/TypistTech/trellis-newrelic-php/blob/master/defaults/main.yml
# Смотрите также: https://docs.newrelic.com/docs/agents/php-agent/configuration/php-agent-configuration
newrelic_config:
appname: "Мое удивительное приложение {{ env }}"
framework: no_framework
transaction_tracer.detail: 1
datastore_tracer.database_name_reporting.enabled: true
Изменение плейбука Trellis
Добавьте эту роль в dev.yml
и server.yml
сразу после role: php
:
# `dev.yml` & `server.yml`
roles:
# Другие роли Trellis ...
- { role: php, tags: [php] }
+ - { role: TypistTech.trellis-newrelic-php, tags: [php, newrelic-php] }
# Другие роли Trellis ...
Требования
Установка
Добавьте эту роль в galaxy.yml
:
- src: TypistTech.trellis-newrelic-php # Чувствительно к регистру!
version: XXX.YYY.ZZZ # Проверьте последнюю версию!
Запустите $ trellis galaxy install
, чтобы установить эту новую роль.
Общие ошибки
vault_newrelic_license
не определен
Зашифруйте свой лицензионный ключ New Relic в group_vars/<environment>/vault.yml
. Смотрите переменные ролей.
New Relic объединяет несколько окружений в одно приложение
Решение: Определите разные appname
для разных окружений.
Советы:
# group_vars/all/main.yml
#########################
newrelic_config:
appname: "Мое удивительное приложение {{ env }}"
Ошибка после обновления версии PHP
New Relic может не работать и провоцировать ошибки при обновлении основных или минорных версий PHP (например: с 7.4 до 8.0 или с 8.0 до 8.1).
некорректный код возврата
PHP Warning: PHP Startup: Не удалось загрузить динамическую библиотеку 'newrelic.so'
(попытка: /usr/lib/php/20180731/newrelic.so (/usr/lib/php/20180731/newrelic.so:
не удается открыть общий объектный файл: Нет такого файла или каталога),
/usr/lib/php/20180731/newrelic.so.so (/usr/lib/php/20180731/newrelic.so.so:
не удается открыть общий объектный файл: Нет такого файла или каталога)) в Неизвестном
После каждого обновления главной или минорной версии PHP (т.е. когда появится ошибка, описанная выше):
# Для многосерверных настройках выполните следующие шаги на каждом сервере.
ssh [email protected]
sudo newrelic-install install
sudo reboot
# Дождитесь перезагрузки сервера(ов), а затем повторно выполняйте настройку
# Для многосерверных настроек снова выполнять настройку нужно только раз
trellis provision production
Ограничения
- По умолчанию на сервере может быть только одно приложение APM New Relic.
Расширяет
блок fastcgi_basic
для включения fastcgi_param PHP_VALUE "newrelic.appname={{ item.key }} ({{ env }})";
сразу после строки include fastcgi_params;
, чтобы обойти это ограничение.
Приглашаются запросы на изменение.
ЧАВО
Похоже, это потрясающе. Где я могу найти нечто подобное?
- Статьи на блоге Typist Tech блог
- Плагины WordPress от Tang Rufus на wp.org
- Больше проектов на профиле GitHub Typist Tech
- Подпишитесь на рассылку Typist Tech
- Следите за аккаунтом Tang Rufus в Twitter
- Наймите Tang Rufus, чтобы он создал ваш следующий удивительный сайт
Этот пакет отсутствует на wp.org. Где я могу оставить :star::star::star::star::star: отзыв?
Спасибо! Рад, что вам это нравится. Важно, чтобы я знал, что кто-то использует этот проект. Поскольку он не размещен на wordpress.org, пожалуйста, подумайте о:
- :heart: спонсировании этого проекта
- :star: поставить звезду этому репозиторию GitHub
- :eyes: подписке на этот репозиторий GitHub
- напишите что-то хорошее, упоминая @TangRufus
- пишите сообщения в блогах
- отправляйте pull-запросы
- нанять меня
Спонсорство :heart:
Любите trellis-newrelic-php
? Помогите мне поддерживать его, спонсорство здесь может помочь с этим.
Фонд соответствия спонсоров GitHub
Знаете ли вы, что GitHub собирается удвоить ваше спонсорство?
Спонсируйте сейчас через GitHub, чтобы удвоить вашу доброту.
Почему бы вам не нанять меня?
Готов к фрилансу по WordPress. Свяжитесь со мной через контактную форму здесь или по электронной почте [email protected]
Хотите помочь другим способом? Хотите стать спонсором?
Контакт: Tang Rufus
Обратная связь
Пожалуйста, дайте обратную связь! Мы хотим сделать эту библиотеку полезной в как можно большем количестве проектов. Пожалуйста, отправьте issue и укажите, что вам нравится и что нет, или форкните проект и сделайте предложения. Нет слишком мелкой проблемы.
Безопасность
Если вы обнаружите любые вопросы, связанные с безопасностью, пожалуйста, отправьте электронное письмо на [email protected] вместо использования трекера проблем.
Поблагодарности
Trellis New Relic PHP Agent является проектом Typist Tech и поддерживается Tang Rufus, фриланс-разработчиком, который доступен для найма.
Полный список участников можно найти здесь.
Особая благодарность команде Roots, чья Trellis делает этот проект возможным.
Участие
Пожалуйста, смотрите CODE_OF_CONDUCT для получения подробной информации.
Лицензия
Trellis New Relic PHP Agent выпущен под MIT Лицензией.
Install New Relic PHP agent on Trellis servers
ansible-galaxy install TypistTech/trellis-newrelic-php