采集不可聚合的离散的。日志信息的eSpring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP

ELK是三个系统的简称
LogStash:用来做日志的收集、过滤、格式转换
Kibana:和普罗米修斯的grafana一个意思。主要用来展示数据。
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP

用docker来装ELK的环境

Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP
把这个项目克隆到本地
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP
说明里面 告诉你怎么使用。
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP
进入到docker-elk的文件夹下。然后保证当前目录有这个docker-compose.yml这个文件。
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP

第一次安装会下载很多东西。
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP

这样就说明elk的环境就启动起来了。
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP

收集日志的是5000端口
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP
tcp的端口是看不到页面的。我们可以来看下 9200和5601
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP

elastic是账号,changeme是密码。
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP
因为博主之前已经进来过了。如果是第一次进来是需要输入账号和密码的。本身是没有界面的,只是提供restful的服务,让你去采集数据。建索引。
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP
5601的端口
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP

kibana配置的账号和密码在这里
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP
kibana是给elasticSearch做展示的 所以下就需要知道elasticSearcg在哪
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP

接入springboot

springboot默认用logback做的日志,需要一个依赖。让日志输出到logtash里面去。
搜索logstash logback
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP

Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP

Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP
创建日志的配置文件
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP
文件的内容不再敲了,直接复制过来的
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP
首先声明了一个appender 日志的关联器
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP
class配置的就是jar包里面引用的一个类。作用就是把我们springboot产生的日志。输出给LogStash,
这里面要配置一个属性destination。就是告诉springboot。logstash在哪里。
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP
logstash的配置文件配置的端口。
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP
logstash接到日志以后,就会装给elaticsearch
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP

它会把我们的日志的信息转换成json格式传出去,方便我们后面来解析。
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP
把默认的springboot的日志配置。把它再包进来。这样springboot默认的日志机制依然是生效的。自己又定义了一个appender叫做LogStash
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP
最后写一下Info级别的日志。同时输出到LogStash和Console
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP

springboot默认的日志配置文件

Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP
base.xml里面又引用了其他的xml文件。
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP
console_log_pattern:就是配置的打印到控制台的日志的格式。
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP

启动测试

把orderAPi启动起来,它就会往logstash的5000端口,传日志了。
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP

启动后日志就应该进入到es里面 。
登陆Kibana看一下。密码是changeme
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP

Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP
logstash作为es的数据源连上去以后创建的默认索引。
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP
选择时间戳来过滤日志
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP
这样就创建出来一个新的索引
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP

可以看到日志
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP

Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP
按照时间倒序排列的。
Spring cloud微服务安全实战-7-8ELK+SpringBoot环境搭建-LMLPHP

结束

05-20 12:36