当前位置: 首页 > 后端技术 > PHP

如何分析PHP-fpm的慢执行日志slow_log?

时间:2023-03-29 23:17:37 PHP

文章转自专业的Larvel开发者社区,原文链接:https://learnku.com/laravel/t...改进Drupal使用PHP慢日志和PHPFPM错误日志定位严重的性能问题稳定性的WordPress网站。查找网站问题的一种好方法是检查PHP日志。本文将指导您如何使用PHP慢速日志和PHPFPM错误日志来查找性能问题和网站错误。在开始之前确保您拥有以下内容:SFTP命令行工具(CLI)了解PHP使用使用SFTP下载PHP慢速日志和PHPFPM错误日志将您自己添加为站点团队的成员。从您站点的仪表板获取您的(测试、开发、实时或多开发)环境的SFTP连接信息。打开命令行提示符并粘贴SFTP连接信息。进入日志目录,使用get命令将PHP慢日志下载到本地进行分析。>$sftp-o端口=2222live.91f33beg-d11b-4020a-0005e0-07ca0f4ce7bz@appserver.live.91f33beg-d11b-4020a-0005e0-07ca0f4ce7bz.drush.in>live.91fd3bea-d11b-401a-0@85e0-0appserver.live.91f33beg-d11b-4020a-0005e0-07ca0f4ce7bz.drush.in的密码:>live.91fd3bea-d11b-401a-85e0-0@appserver.live.91f33beg-d11b-4020a-0005e0-07ca0f4ce7bz密码.drush.in:>连接到appserver.live.91f33beg-d11b-4020a-0005e0-07ca0f4ce7bz.drush.in.>sftp>cdlogs>sftp>ls-l>-rw-r--r--11619316193153146Dec1522:34newrelic.log>-rw-r--r--1161931619355123460Dec1522:59nginx-access.log>-rw-r--r--116193161933479688Dec0908:07nginx-access.log-20141209.gz>-rw-r--r--116193161935524355Dec1008:07nginx-access.log-20141210.gz>-rw-r--r--116193161935602638Dec1108:06nginx-access.log-20141211.gz>-rw-r--r--11619316193603399112月12日08:07nginx-access.log-20141212.gz>-rw-r--r--116193161935793730Dec1308:07nginx-access.log-20141213.gz>-rw-r--r--11619316193468893412月14日08:07nginx-access.log-20141214.gz>-rw-r--r--11619316193586763612月15日08:07nginx-access.log-20141215.gz>-rw-r--r--116193161933499Dec1522:46nginx-error.log>-rw-r--r--116193161931126685Dec1408:07nginx-error.log-20141214>-rw-r--r--11619316193501712月15日11:52php-error.log>-rw------1161931619364238812月15日22:55php-fpm-error.log>-rw-------116193161931067358Dec1220:07php-fpm-error.log-20141212>-rw------116193161937209576Dec1522:55php-slow.log>sftp>getphp-slow.log>正在获取/srv/bindings/d142301948514750b2ff39988as6f4b9158e5/logs/php-slow.log到php-slow.log>/srv/bindings/d142301948514750b2ff39988as6f4b9158e5/logs/php-slow.log100%7041KB370.6KB/s00:19>sftp>获取php-fpm-error.log>获取/srv/bindings/b6126cf3069a4ba5983f3e9eaf35d627/logs/php-fpm-error.log到php-fpm-error.log>/srv/bindings/b6126cf3069a4ba5983f3e9eaf35d627/logs/php-fpm-error.log100%717KB238.9KB/s00:03>sftp>exit>$分析PHP的慢查询日志,可以使用grep命令快速定位一个函数调用记录的次数,记录的次数越多,优化优先级越高:>$grep-o'stream_wrappers.inc'php-slow.log|wc-l56>$grep-o'page.tpl'php-slow.log|wc-l48>$grep-o'.tpl'php-slow.log|wc-l73>$grep-o'tdm_'.*.'module'php-slow.log|wc-l1995>$AnalyzingPHPFPMerrorlogs也可以通过分析NGINX产生的PHPFPM错误日志来定位问题,比如PHPworker执行超时和终止。每个PHPworker都有一个唯一的进程ID,这个ID也会记录在PHPslowlog中。因此,您可以关联PHPFPM错误日志和PHP错误日志。在下面的示例中,工作人员ID是119057。//PHPFPM错误日志内容[16-Dec-201414:54:21]注意:[poolwww]child119057在323.614265秒后退出,代码为0//PHP错误日志内容[16-Dec-201403:13:50][poolwww]pid119057script_filename=/srv/bindings/d9e7c7e384eb453f8ac80cee5d4d791bad2wqq34d/code/index.php[0x0000000003160c28]drupal_substr()/srv/bindings/d9e7c7e384eb453f8ac80cee5d4d791bad2wqq34d/code/sites/all/modules/contrib/cdn/cdn.module:37[0x000000000315f820]cdn_file_url_alter()/srv/bindings/d9e7c7e384eb453f8ac80cee5d4d791bad2wqq34d/code/includes/module.inc:1101[0x000000000315f498]drupal_alter()/srv/bindings/d9e7c7e384eb453f8ac80cee5d4d791bad2wqq34d/code/includes/file.inc:375[0x000000000315f148]file_create_url()/srv/bindings/d9e7c7e384eb453f8ac80cee5d4d791bad2wqq34d/code/sites/all/modules/contrib/cdn/cdn.basic.css.inc:155[0x00007fff92553cb0]_cdn_build_css_path()unknown:0[0x000000000315e160]preg_replace_callback()/srv/bindings/d9e7c7e384eb453f8ac80cee5d4d791bad2wqq34d/代码/站点/所有/模块/contrib/cdn/cdn.basic.css.inc:95[0x000000000315d7e8]_cdn_build_css_cache()/srv/bindings/d9e7c7e384eb453f8ac80cee5d4d791bad2wqq34d/code/sites/ncontricb.modules.css.inc:33[0x000000000315bce0]_cdn_aggregate_css()/srv/bindings/d9e7c7e384eb453f8ac80cee5d4d791bad2wqq34d/code/includes/common.inc:3391[0x000000000315ad98]drupal_pre_render_styles()/srv/bindings/d9e7c7e384eb453f8ac80cee5d4d791bad2wqq34d/code/includes/common.inc:5931[0x000000000315a568]drupal_render()/srv/bindings/d9e7c7e384eb453f8ac80cee5d4d791bad2wqq34d/code/includes/common.inc:3127[0x000000000315a030]drupal_get_css()/srv/bindings/d9e7c7e384eb453f8ac80cee5d4d791bad2wqq34d/code/includes/theme.inc:2707[0x0000000003158210]template_process_html()/srv/bindings/d9e7c7e384eb453f8ac80cee5d4d791bad2wqq34d/code/includes/theme.inc:1125[0x00000000031572c0]theme()/srv/bindings/d9e7c7e384eb453f8ac80cee5d4d791bad/com6.includes/common7qincludes[0x00000000031572c0]x0000000003156da0]drupal_render()/srv/bindings/d9e7c7e384eb453f8ac80cee5d4d791bad2wqq34d/code/includes/common.inc:5814[0x0000000003155c68]drupal_render_page()/srv/bindings/d9e7c7e384eb453f8ac80cee5d4d791bad2wqq34d/code/includes/common.inc:2701[0x00000000031558b0]drupal_deliver_html_page()/srv/bindings/d9e7c7e384eb453f8ac80cee5d4d791bad2wqq34d/code/includes/common.inc:2589[0x0000000003155200]drupal_deliver_page()/srv/bindings/d9e7c7e384eb453f8ac80cee5d4d791bad2wqq34d/code/includes/menu.inc:532[0x0000000003155020]menu_execute_active_handler()/srv/bindings/d9e7c7e384eb453f8ac80cee5d4d791bad2wqq34d/code/index.php:21通过使用这些方法和文件来定位PHP错误和性能问题,可以大大提高网站的稳定性

最新推荐
猜你喜欢