duan1933 2015-10-22 21:31
浏览 123
已采纳

Newrelic PHP APM插件的问题 - 崩溃,僵尸,PHP-FPM和Nginx

I've been attempting to install the PHP APM plugin for my Web servers, however I've hit a wall and require some assistance.

We are able to install the plugin within issue, update the config without issue, and start the service without issue. However, shortly afterwards the php_agent.log starts showing that it cannot connect to the daemon and continues to fail.

I've checked the daemon and it shows that it is running, however I discovered that the process has actually zombie'd out and is dead. Restarting PHP-FPM removes the zombie and the service works again for a few minutes, but goes back into a zombie state soon after.

I'm able to replicate this problem across all of my web servers. I even spun up a brand new box and deployed it, adding the same configurations as the others, and it too started to zombie shortly after starting.

My configuration is as follows:

  • CentOS 7 (kernel 3.10.0-229.11.1.el7.x86_64)
  • PHP-FPM (5.5.30-1.el7.remi)
  • Nginx (1:1.6.3-6.el7)
  • Newrelic Daemon (4.23.4.113-1)
  • Newrelic PHP5 (4.23.4.113-1)
  • Newrelic PHP5 Common (4.23.4.113-1)

To add insult to injury, it appears that if we leave the zombie for too long, it eventually crashes the Web site across all the servers. Truely, a pain in the rear.

I would appreciate any help or thoughts anyone might have, as this is driving me insane.

Thanks!

  • 写回答

3条回答 默认 最新

  • duanche5149 2015-10-23 21:47
    关注

    Do you have a process that is clearing out files residing in /tmp for more than some set time? The agent and daemon communicate via a socket file called /tmp/.newrelic.sock. If it goes away you should see "ENOENT" errors in the logs. You might also have a permission issue for some locations/files.

    If the socket file is the problem, consider switching to a TCP port instead of the socket file by setting newrelic.daemon.port in your configuration file (newrelic.ini)

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 用python如何确定子元素在父元素中的位置
  • ¥15 obj文件滤除异常高程
  • ¥15 用mathematicas或者matlab计算三重积分
  • ¥15 Loop unrolling的runtime计算
  • ¥100 NVMe-oF的Target端,开启attr_offload后,测试失败。
  • ¥100 有偿照片马赛克去掉,保留原始数据
  • ¥15 c# winform http报错,如何解决?
  • ¥15 统计软件及应用-r软件
  • ¥15 爬虫返回的js数据结构如何处理
  • ¥15 python初学者中间insert部分不知道怎么写,请教各位中间如何填写。还想问问大家0基础如何入手python和c语言,期待各位的回复和帮助。