Springboot整合GrayLog日志平台
之前一直想搭建一下ELK日志平台,但是ELK组件之间各种配置让人感觉不是很好用,然后就发现了GrayLog这个日志管理和收集平台,上手以后发现确实简单。这里就记录一下整合到springboot项目中的过程。一、简介和对比(一)官方网站GrayLog开源官方网站为:https://www.graylog.org/注:下载安装GrayLog以后安装然后修改配置文件中es和mongodb的地址,其中es
之前一直想搭建一下ELK日志平台,但是ELK组件之间各种配置让人感觉不是很好用,然后就发现了GrayLog这个日志管理和收集平台,上手以后发现确实简单。这里就记录一下整合到springboot项目中的过程。
一、简介和对比
(一)官方网站
GrayLog开源官方网站为:https://www.graylog.org/
注:下载安装GrayLog以后安装然后修改配置文件中es和mongodb的地址,其中es是用来存储丢到GrayLog中的日志,mongodb是用来存储GrayLog本身的数据的。
(二)GrayLog与ELK的对比
GrayLog与ELK的对比可参考:Graylog和ELK的简单对比
二、安装
前提:由于GrayLog依赖es和mongodb,因此需要提前安装好es和mongodb。安装es可参考:Linux下安装ElasticSearch,至于mongodb的安装可自行百度。
(一)下载和安装
访问官方网站以后,可以选择直接下载rpm压缩包还是docker直接安装,官方都提供了对应的方式
默认的是要你登录然后才能下载的,你可以点击下面的小字不登录
然后最终你会进到一个文档,这里我直接贴地址:https://docs.graylog.org/docs/operating-system-packages。访问以后你可以下载包或者直接使用yum安装,我选择的是yum安装
安装以后直接根据操作系统运行对应的启动命令和自启命令就行了。
(二)修改配置文件
进入GrayLog的安装目录/etc/graylog/server
,然后修改该目录下的server.conf文件,修改文件中es的地址和mongodb的地址。由于GrayLog的日志控制台默认是9000端口,我已经使用了,所以修改成了9398端口。我把es装在了其他机器,mongodb跟GrayLog安装在了同一台机器,所以es和mongodb的配置改成了如下:
(三)访问GrayLog的控制后台
直接访问安装GrayLog机器的ip+上面的端口即可(若未修改则直接访问9000,修改以后就按照修改后的访问),我修改后的端口是9398,默认账号密码admin/admin,于是访问以后如下:
三、整合到springboot中
(一)GrayLog控制台配置
在GrayLog控制台创建一个日志输入方式,我们选择UDP的方式,System–>Inputs
创建类型选择GELF UDP然后点击Launch new input然后在弹框里面勾选Global,输入title,默认的端口是12201,日志大小都有,可以按照各自情况改,然后保存就好了
(二)springboot项目配置
springboot项目直接向GrayLog输出日需要依赖logback,用的也是logback的插件
1、导入依赖
<!-- Graylog-->
<dependency>
<groupId>de.siegmar</groupId>
<artifactId>logback-gelf</artifactId>
<version>1.1.0</version>
</dependency>
2、修改logback的输出
在logback的xml文件中增加一个appender
<appender name="GELF" class="de.siegmar.logbackgelf.GelfUdpAppender">
<graylogHost>GrayLog的ip</graylogHost>
<graylogPort>12201</graylogPort>
</appender>
<root level="debug">
<appender-ref ref="GELF" />
</root>
这样就配置完成了,下面就是去GrayLog控制后台查询输入过去的日志了
四、GrayLog控制后台使用
登录GrayLog控制后台以后点击Searchr然后就能看到输入过来的日志了
这里也可以根据条件搜索日志结果,也能设置让系统固定的时间内刷新日志,也能生成数据大屏和报警信息,具体的使用方式可以参考官方文档:https://docs.graylog.org/docs/queries
更多推荐
所有评论(0)