Rumah > pembangunan bahagian belakang > tutorial php > 使用logstash收集php-fpm slow log

使用logstash收集php-fpm slow log

WBOY
Lepaskan: 2016-06-20 12:26:06
asal
1405 orang telah melayarinya

目前php-fpm的服务部署在了docker中,对php-fpm的log和php error log可以通过syslog协议的形式发送出去,而php-fpm的slow log却不能配置为syslog协议,只能输出到文件中,因为一条slow log的是有多行组成的。

为了收集slow log,可以通过logstash、flume等工具进行收集,本文采用logstash对slow log进行收集,并将收集的log写入到kafka中,便于后续的处理。logstash的input采用读取文件的方式,即跟tail -f的原理类似。为了能够将多行日志作为一行,采用了filter中的multiline来对多行日志进行合并操作。logstash的配置如下:

input {    file {        path => [“/var/log/php-fpm/fpm-slow.log"]    }}filter {    multiline {        pattern => "^$"        negate => true        what => "previous"    }}output {    stdout{codec => rubydebug}    kafka {        codec => plain {           format => “tag|%{host}%{message}"        }        topic_id => "fpm-slowlog"        bootstrap_servers => “kafka1.hostname:8082,kafka2.hostname:8082"    }}
Salin selepas log masuk
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan