logstash java异常_logstash 收集tomcat异常信息

我所期望达到的效果,就是每个日期一条,在kibana界面也是一条。多行异常的也是一条。

其实,很简单,就是加个反向判断。

logstash原理

一个客户端,一个服务器,就是这样的模式

没什么神奇的,最麻烦的正则匹配,不好弄。听说storm更好用。

1.client配置

cat /etc/logstash/conf.d/shipper.conf

input {

file {

path => ["/opt/src/logs/*/*/*/*"]

type => "service"

start_position => "beginning"

}

}

filter {

if [type] == "service" {

multiline {

patterns_dir => "/etc/logstash/conf.d"

pattern => "(^%{MYTIMESTAMP})"

negate => true

what => "previous"

}

}

grok {

patterns_dir => "/etc/logstash/conf.d"

match => [ "message", "%{MYLOG}" ]

add_field => [ "log_ip", "随便写" ]

}

}

output {

stdout {}

redis {

host => "你的服务端ip"

port => 6379

password => "xx"

data_type => "list"

key => "key_count"

}

}

patterns_dir => "/etc/logstash/conf.d" 这个东西就是正则表达式

新建一个文件 cat /etc/logstash/conf.d/j2ee

JAVACLASS (?:[a-zA-Z$_][a-zA-Z$_0-9]*\.)*[a-zA-Z$_][a-zA-Z$_0-9]*

HTTPPORT  ([a-zA-Z$_0-9]*\-)*([0-9])

JAVALOGMESSAGE (.*)

MYTIMESTAMP 20%{YEAR}-%{MONTHNUM}-%{MONTHDAY}%{HOUR}:%{MINUTE}:%{SECOND}

MYLOG %{MYTIMESTAMP:mytimestamp}\s\[%{HTTPPORT:port}\]\s%{LOGLEVEL:level}\s%{JAVACLASS:class}\s-%{JAVALOGMESSAGE:logmessage}

我的日志格式是这样的

2016-10-2015:52:01.174 [http-apr-8282-exec-4] INFO  c.e.w.c.... -resp:

如果你的日志不一样,那么j2ee文件要做相应的修改

比如

209c20762f96cd24945c95485e25f15d.png

启动脚本logstash.sh

#!/bin/bash

. /etc/init.d/functions

function start(){

cd /home/

/opt/logstash/bin/logstash -f /etc/logstash/conf.d/shipper.conf & >>/dev/null 2>&1

}

function stop(){

sudo kill -9 `ps -ef|grep logstash|grep -v grep|awk '{print $2}'`

#for i in `ps -ef|grep logstash|grep -v grep|awk '{print $2}'`

#do;sudo kill -9 $i;done

}

case $1 in

start)

start

;;

stop)

stop

;;

*)

printf "Usage sh *.sh start|stop"

;;

esac

sh logstash.sh stop/start

2.server配置

cat /etc/logstash/conf.d/indexer.conf

input {

redis {

host => "你的服务端ip"

port => 6379

password => "xx"

type => "redis-input"

data_type => "list"

key => "key_count"

}

}

output {

stdout {}

elasticsearch {

cluster => "elasticsearch"

codec => "json"

protocol => "http"

}

}

3.kibana效果

c5e79fbabe3034666295f3bfa3556317.png

多行为一行就不截图了

注意有事启动了logstash,但是没有日志传送过来

input file 匹配类型,正则有问题

filter正则有问题

总而言之,就是配置有问题。

demo

还有es+gra+logstash

本文转自 liqius 51CTO博客,原文链接:http://blog.51cto.com/szgb17/1863975,如需转载请自行联系原作者

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值