如何使用Logstash收集PHP相关日志-创新互联

本篇内容介绍了“如何使用Logstash收集PHP相关日志”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

在延吉等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都网站建设、成都做网站 网站设计制作按需求定制网站,公司网站建设,企业网站建设,成都品牌网站建设,全网营销推广,外贸网站建设,延吉网站建设费用合理。

这里收集三种日志

PHP的错误日志,PHP-FPM的错误日志和慢查询日志

在php.ini中设置

error_log = /data/app_data/php/logs/php_errors.log

在php-fpm.conf中设置

error_log = /data/app_data/php/logs/php-fpm_error.log

slowlog = /data/app_data/php/logs/php-fpm_slow.log

PHP错误日志如下:

[29-Jan-2015 07:37:44 UTC] PHP Warning:  PHP Startup: Unable to load dynamic library '/data/app_platform/php/lib/php/exte nsions/no-debug-non-zts-20100525/redis.so' - /data/app_platform/php/lib/php/extensions/no-debug-non-zts-20100525/redis.so : cannot open shared object file: No such file or directory in Unknown on line 0 [29-Jan-2015 07:37:44 UTC] PHP Warning:  PHP Startup: Unable to load dynamic library '/data/app_platform/php/lib/php/exte nsions/no-debug-non-zts-20100525/apc.so' - /data/app_platform/php/lib/php/extensions/no-debug-non-zts-20100525/apc.so: ca nnot open shared object file: No such file or directory in Unknown on line 0 [29-Jan-2015 07:37:44 UTC] PHP Warning:  PHP Startup: Unable to load dynamic library '/data/app_platform/php/lib/php/exte nsions/no-debug-non-zts-20100525/mongo.so' - /data/app_platform/php/lib/php/extensions/no-debug-non-zts-20100525/mongo.so : cannot open shared object file: No such file or directory in Unknown on line 0

PHP-FPM错误日志如下:

[30-Jan-2015 10:32:25] ERROR: unable to read what child say: Bad file descriptor (9) [30-Jan-2015 10:32:25] ERROR: unable to read what child say: Bad file descriptor (9) [30-Jan-2015 10:32:25] ERROR: unable to read what child say: Bad file descriptor (9) [30-Jan-2015 10:32:25] ERROR: unable to read what child say: Bad file descriptor (9) [30-Jan-2015 10:32:25] ERROR: unable to read what child say: Bad file descriptor (9) [10-Mar-2015 17:37:11] ERROR: unable to read what child say: Bad file descriptor (9) [10-Mar-2015 17:37:11] ERROR: unable to read what child say: Bad file descriptor (9) [10-Mar-2015 21:31:48] ERROR: unable to read what child say: Bad file descriptor (9)

PHP-FPM的慢查询日志如下:

[11-Mar-2015 16:54:17]  [pool www] pid 12873 script_filename = /data//index.php [0x00007f497fa5b620] curl_exec() /data//Account.php:221 [0x00007f497fa5a4e0] call() /data/gintama_app/jidong/game_code/app/controllers/Game.php:31 [0x00007fff29eea180] load() unknown:0 [0x00007f497fa59e18] call_user_func_array() /data/library/BaseCtrl.php:20 [0x00007fff29eea470] handoutAction() unknown:0 [0x00007f497fa59400] run() /data//index.php:30 [11-Mar-2015 16:56:46]  [pool www] pid 12881 script_filename = /data/index.php [0x00007f497fa5b620] curl_exec() /data//Account.php:221 [0x00007f497fa5a4e0] call() /data/Game.php:31 [0x00007fff29eea180] load() unknown:0 [0x00007f497fa59e18] call_user_func_array() /data/library/BaseCtrl.php:20 [0x00007fff29eea470] handoutAction() unknown:0 [0x00007f497fa59400] run() /data/index.php:30

添加Logstash的配置文件shipper_php-fpm.conf

input {        file {           type => "php_errors"           path => "/data/app_data/php/logs/php_errors.log"           sincedb_path => "/dev/null" #          start_position => "beginning"          }    file {           type => "php-fpm_error"           path => "/data/app_data/php/logs/php-fpm_error.log"           sincedb_path => "/dev/null" #          start_position => "beginning"         }    file {           type => "php-fpm_slow"           path => "/data/app_data/php/logs/php-fpm_slow.log"           sincedb_path => "/dev/null" #          start_position => "beginning"         }       } filter {    if [type] == "php_errors" {       mutate {               add_tag => ["zabbix-sender"]               add_field => [                 "zabbix_host","%{host}",                 "zabbix_item","php.errors" #                "send_field","%{message}"                            ]               }                                }    if [type] == "php-fpm_errors"{       mutate {               add_tag => ["zabbix-sender"]               add_field => [                 "zabbix_host","%{host}",                 "zabbix_item","php-fpm.error" #                "send_field","%{message}"                            ]               }                                        }    if [type] == "php-fpm_slow" {       multiline {              pattern => "^(\[0x|$|script_filename)"              what    => "previous"                 }         mutate {               add_tag => ["zabbix-sender"]               add_field => [                 "zabbix_host","%{host}",                 "zabbix_item","php-fpm.slow" #                "send_field","%{message}"                            ]               }                                }        } output {       stdout {      codec => "rubydebug"               }    zabbix {     tags => "zabbix-sender"     host => "10.4.1.125"     port => "10051"     zabbix_sender => "/usr/local/zabbix/bin/zabbix_sender"             }    redis {      host => "10.4.29.162"      data_type => "list"      key => "logstash"          }        }

同理添加zabbixb报警模板

“如何使用Logstash收集PHP相关日志”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注创新互联网站,小编将为大家输出更多高质量的实用文章!

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


文章题目:如何使用Logstash收集PHP相关日志-创新互联
分享地址:http://myzitong.com/article/dhdphh.html