Мы создали приложение, работающее на экземпляре Elastic Beanstalk, 64-битный PHP версии 5.4 (не устаревший). Я использовал Инструкции по установке New Relic для установки New Relic, и просмотр phpinfo показывает, что New Relic установлен.
Однако я не получаю никаких данных в New Relic, потому что он говорит, что лицензия ***invalid format***
под newrelic.licence
Я получаю лицензию из своей учетной записи New Relic, и это шестнадцатеричная строка из 40 символов. Вот текущий файл newrelic.config в папке .ebextensions, которую я использую, с закомментированной большей частью лицензионного ключа.
packages:
yum:
newrelic-php5: []
rpm:
newrelic: http://yum.newrelic.com/pub/newrelic/el5/x86_64/newrelic-repo-5-3.noarch.rpm
commands:
configure_new_relic:
command: newrelic-install install
env:
NR_INSTALL_SILENT: true
NR_INSTALL_KEY: ec9a4...
Скитч соответствующего phpinfo
Может ли кто-нибудь пролить свет на то, что здесь происходит? Я пробовал два разных лицензионных ключа New Relic с той же ошибкой, я также заключил его в одинарную кавычку и пробовал только прописные буквы. И на данный момент у меня нет идей, что попробовать. Мы не гуру AWS, поэтому очень легко может быть что-то простое, например, не открывать порт для проверки лицензии?
Я столкнулся с той же проблемой. Их документация кажется неполной. Решение - добавить этот раздел в ваш файл конфигурации .ebextensions / newrelic.config. При развертывании в Beanstalk будет создан новый ini-файл с вашим лицензионным ключом, который PHP проанализирует и подберет.
files:
"/etc/php.d/newrelic.ini":
mode: "000777"
owner: ec2-user
group: ec2-user
content: |
newrelic.license="YOUR-NEW-RELIC-LICENSE-KEY-HERE"
Вышеупомянутое от @afessler очень помогло. Но этого было недостаточно, поскольку для работы моей установки требовалось следующее. Для меня старый файл newrelic.ini, который был изначально установлен, содержал дополнительную информацию, которая должна была быть в файле. Помните, что если вы уже выполнили несколько развертываний, вам следует удалить старый файл newrelic.ini, поскольку он не перезаписывался для меня при развертывании.
Для проверки вы также должны добавить phpinfo.php в корень вашего приложения, чтобы проверить, действительно ли New Relic установлен.
Я выложу весь свой файл .config:
packages:
yum:
newrelic-php5: []
newrelic-sysmond: []
rpm:
newrelic: http://yum.newrelic.com/pub/newrelic/el5/x86_64/newrelic-repo-5-3.noarch.rpm
commands:
"01":
command: newrelic-install install
env:
NR_INSTALL_SILENT: true
NR_INSTALL_KEY: [ENTER_LICENSE_KEY]
"02":
command: echo newrelic.appname="[ENTER_APP_NAME]" >> /etc/php.ini
"03":
command: nrsysmond-config –set license_key=[ENTER_LICENSE_KEY]
"04":
command: /etc/init.d/newrelic-sysmond start
files:
"/etc/php.d/newrelic.ini":
mode: "000777"
owner: ec2-user
group: ec2-user
content: |
extension = "newrelic.so"
[newrelic]
newrelic.license = "[ENTER_LICENSE_KEY]"
newrelic.logfile = "/var/log/newrelic/php_agent.log"
newrelic.appname = "[ENTER_APP_NAME]"
newrelic.daemon.logfile = "/var/log/newrelic/newrelic-daemon.log"
Вам необходимо отредактировать файл, расположенный по адресу: etc / php5 / apache2 / conf.d / newrelic.ini. Отредактируйте поле лицензионного ключа и перезапустите deamon и apache.