Я пытаюсь интегрировать Newrelic в приложение Yii2, и кажется, что есть некоторые проблемы с захватом некоторых транзакций / трассировок, особенно если они занимают больше времени.
Из / var / log / newrelic / php_agent. log
2019-11-06 14:28:53.243 +0000 (42171 42171) warning: Invalid segment '<unknown>': start time (10097053) after stop time (0)
2019-11-06 14:28:53.243 +0000 (42171 42171) warning: Invalid segment '<unknown>': start time (10424999) after stop time (0)
2019-11-06 14:28:53.243 +0000 (42171 42171) warning: Segment iteration failed; no trace or span events will be generated for this transaction
Из /var/log/newrelic/newrelic-daemon.log
2019/11/06 14:01:11.380047 (45) Info: Reporting to: https://rpm.eu.newrelic.com/accounts/###/applications/###
2019/11/06 14:01:11.380571 (45) Info: app 'local-rest-api' connected with run id 'BMay...waQ'
2019/11/06 14:50:08.040596 (45) Info: removing "local-rest-api" with run id "BMay...waQ" for lack of activity within 10m0s
2019/11/06 14:50:08.046068 (45) Info: removing "local-rest-api" with run id "BMay...waQ" for lack of activity within 10m0s
Другие подробности env:
- Docker 2.1.0.4 запущенна MacOS
- ОТ php: 7.2.14-fpm с Xdebug v2.7.2
- Новая версия Relic daemon 9.2.0.247-51143810a9c6
- Yii2 v2.0.14
Установить скрипт в Docker:
RUN \
curl -L "https://download.newrelic.com/php_agent/release/newrelic-php5-9.2.0.247-linux.tar.gz" | tar -C /tmp -zx && \
export NR_INSTALL_USE_CP_NOT_LN=1 && \
export NR_INSTALL_SILENT=1 && \
/tmp/newrelic-php5-*/newrelic-install install && \
rm -rf /tmp/newrelic-php5-* /tmp/nrinstall* && \
sed -i -e 's/"REPLACE_WITH_REAL_KEY"/"xxxxxxxxxxxx"/' \
-e 's/newrelic.appname = "PHP Application"/newrelic.appname = "local-rest-api"/' \
/usr/local/etc/php/conf.d/newrelic.ini
Текущее решение:
Добавление newrelic_end_of_transaction()
до окончания yii\base\Application::run()
, но оно не работает для более длинных транзакций (например, дажеесли я добавлю 10 секунд сна).
Любые предложения о том, как решить или отладить проблему?
Спасибо!