首页 文章 精选 留言 我的

精选列表

搜索[tomcat],共3647篇文章
优秀的个人博客,低调大师

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(.*) MYTIMESTAMP20%{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]INFOc.e.w.c....-resp: 如果你的日志不一样,那么j2ee文件要做相应的修改 http://grokdebug.herokuapp.com/这个网站可以测试 比如 启动脚本logstash.sh #!/bin/bash ./etc/init.d/functions functionstart(){ cd/home/ /opt/logstash/bin/logstash-f/etc/logstash/conf.d/shipper.conf&>>/dev/null2>&1 } functionstop(){ sudokill-9`ps-ef|greplogstash|grep-vgrep|awk'{print$2}'` #foriin`ps-ef|greplogstash|grep-vgrep|awk'{print$2}'` #do;sudokill-9$i;done } case$1in start) start ;; stop) stop ;; *) printf"Usagesh*.shstart|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效果 多行为一行就不截图了 注意有事启动了logstash,但是没有日志传送过来 input file 匹配类型,正则有问题 filter正则有问题 总而言之,就是配置有问题。 demo 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 client cat demo.conf input{ file { path=>[ "/home/python/demo/*/*/*/*" ] type => "demo" start_position=> "beginning" } } filter{ if [ type ]== "demo" { multiline{ patterns_dir=> "/etc/logstash/conf.d/patterns" pattern=> "(^%{MYTIMESTAMP})" negate=> true what=> "previous" } } grok{ patterns_dir=> "/etc/logstash/conf.d/patterns" match=>[ "message" , "%{MYLOG}" ] add_field=>[ "log_ip" , "172.29.xx.xx" ] } } output{ stdout{} redis{ host=> "172.29.xx.xx" port=>6379 password=> "xxxxxx" data_type=> "list" key=> "key_count" } } cd /etc/logstash/conf .d /patterns cat 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(.*) MYTIMESTAMP20%{YEAR}-%{MONTHNUM}-%{MONTHDAY}%{HOUR}:%{MINUTE}:%{SECOND} MYLOG%{MYTIMESTAMP:mytimestamp}\s\[%{HTTPPORT:port}\]\s%{LOGLEVEL:level}\s%{JAVACLASS:class}\s-%{JAVALOGMESSAGE:logmessage} logstash-f /etc/logstash/conf .d /logstash-indexer .conforservicelogstashstart server nohup /usr/share/elasticsearch/bin/elasticsearch & nohup /usr/bin/kibana & logstash-f /etc/logstash/conf .d /logstash-indexer .conforservicelogstashstart 还有es+gra+logstash http://play.grafana.org/dashboard/db/elasticsearch-metricsdoc 本文转自 liqius 51CTO博客,原文链接:http://blog.51cto.com/szgb17/1863975,如需转载请自行联系原作者

资源下载

更多资源
优质分享App

优质分享App

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册