Centos7.5 docker-24.0.6 + elasticsearch-7.4.0 + kibana-7.4.0 + logstash-7.4.0 + filebeat-7.4.0 + springboot 实现多模块日志收集系统
文章目录
一、环境 & 版本:
- linux内核:
3.10.0-862.el7.x86_64
- 运行系统:
CentOS 7.5
- docker版本:
24.0.6
- elasticsearch版本:
7.4.0
- kibana版本:
7.4.0
- docker 镜像 & 版本,如下所示:
[root@localhost ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE logstash 7.4.0 c2c1ac6b995b 4 years ago 889MB kibana 7.4.0 0328df36f79f 4 years ago 1.1GB elasticsearch 7.4.0 dd156dd42341 4 years ago 859MB mobz/elasticsearch-head 5 b19a5c98e43b 6 years ago 824MB
二、部署 Docker、elasticsearch、Kibana 教程:
- Centos 7.5 部署 Docker-24.0.6 详细步骤(详细版): https://blog.csdn.net/seesun2012/article/details/133674191
- Docker 部署elasticsearch-7.4.0(在线Docker版):https://blog.csdn.net/seesun2012/article/details/133683893
- Docker 部署Kibana-7.4.0(在线Docker版):https://blog.csdn.net/seesun2012/article/details/133687729
- 注意1:本文的命令使用的是
root
用户登录执行,不是 root 的话所有命令前面要加sudo
- 注意2:本文所有需要执行的linux命令均在
[root@localhost /]#
结尾之后
三、Docker部署Logstash:
-
拉取
Logstash-7.4.0
远程仓库镜像,命令(如下所示即为成功
):[root@localhost /]# docker pull logstash:7.4.0
-
启动
logstash
容器,拷贝文件,并查看日志,命令:[root@localhost /]# docker run -d --name=logstash -p 5044:5044 logstash:7.4.0
-
创建需要挂载的文件目录与配置文件信息,创建 & 编辑 logstash 启动配置文件
logstash.yml
文件:[root@localhost /]# docker cp logstash:/usr/share/logstash /opt/logstash/ Successfully copied 316MB to /opt/logstash/ [root@localhost /]# mkdir -p /opt/logstash/config/conf.d [root@localhost /]# mv /opt/logstash/config/logstash.yml /opt/logstash/config/logstash.yml_blk [root@localhost /]# rm -rf /opt/logstash/config/logstash.yml [root@localhost /]# touch /opt/logstash/config/logstash.yml [root@localhost /]# touch /opt/logstash/config/conf.d/syslog.conf [root@localhost /]# vi /opt/logstash/config/logstash.yml
文件内容如下:
#[logstash.yml] http.host: "0.0.0.0" xpack.monitoring.elasticsearch.hosts: [ "http://192.168.11.40:9200" ] #这里的path.config是指 Logstash 容器内部的路径,需要在docker启动命令中,将宿主机上的配置文件路径通过挂载的方式映射到容器内部 path.config: /usr/share/logstash/config/conf.d/*.conf #这里的path.logs是指 Logstash 容器内部的路径,需要在docker启动命令中,将宿主机上的配置文件路径通过挂载的方式映射到容器内部 path.logs: /usr/share/logstash/logs
注意:filebeat.yml文件权限为 755 ,不能是777,否则会报如下错
config file ("filebeat.yml") can only be writable by the owner but the permissions are "-rwxrwxrwx"
-
创建需要挂载的文件目录与配置文件信息,创建 & 编辑 logstash 启动配置文件
logstash.conf
文件:[root@localhost /]# vi /opt/logstash/config/conf.d/syslog.conf
文件内容如下:
#[syslog.conf] input { beats { #开放所有ip可以访问 host => '0.0.0.0' #访问端口 port => 5044 #超时时间 client_inactivity_timeout => 36000 } } #单模块收集模式 #output { # elasticsearch { # #设置ES链接地址,这里的ip是你虚拟机的ip地址 # hosts => ["192.168.11.40:9200"] # index => "logstash_%{+YYYY-MM-dd}" # } #} #多模块收集模式,filebeat.inputs.type.tag属性区分 output { #可以自定义,与[filebeat.yml]配置文件filebeat.inputs.type.tag属性保持一致即可,不一致将无法准确推送到对应的es索引上去 if "demo-elk-server-user" in [tags]{ elasticsearch { #设置ES链接地址,这里的ip是你虚拟机的ip地址 hosts => ["192.168.11.40:9200"] index => "demo-elk-server-user_%{+YYYY-MM-dd}" } } #可以自定义,与[filebeat.yml]配置文件filebeat.inputs.type.tag属性保持一致即可,不一致将无法准确推送到对应的es索引上去 if "demo-elk-server-payment" in [tags]{ elasticsearch { #设置ES链接地址,这里的ip是你虚拟机的ip地址 hosts => ["192.168.11.40:9200"] index => "demo-elk-server-payment_%{+YYYY-MM-dd}" } } }
-
目录 & 文件授权,命令:
[root@localhost /]# chmod 777 -R /opt/logstash [root@localhost /]# chmod -R 755 /opt/logstash/config/logstash.yml [root@localhost /]# chmod -R 755 /opt/logstash/config/conf.d/syslog.conf
-
创建 & 启动
Logstash-7.4.0
容器,命令:[root@localhost /]# docker stop logstash [root@localhost /]# docker rm logstash [root@localhost /]# docker run -d --restart=always --name logstash -p 5044:5044 -p 9600:9600 -v /opt/logstash/config/logstash.yml:/usr/share/logstash/config/logstash.yml -v /opt/logstash/config/conf.d:/usr/share/logstash/config/conf.d -v /opt/logstash/logs:/usr/share/logstash/logs logstash:7.4.0
注意:
5044
、9600
端口均要映射,否则filebeat
连接logstash
时会报错,提示连接的ip和端口被重置 -
进入 logstash 容器,
安装 logstash-codec-json_lines
插件,命令:[root@localhost /]# docker exec -it logstash /bin/bash bash-4.2$ /usr/share/logstash/bin/logstash-plugin install logstash-codec-json_lines OpenJDK 64-Bit Server VM warning: Option UseConcMarkSweepGC was deprecated in version 9.0 and will likely be removed in a WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.headius.backport9.modules.Modules to method java.lang.Object.finalize() WARNING: Please consider reporting this to the maintainers of com.headius.backport9.modules.Modules WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Validating logstash-codec-json_lines Installing logstash-codec-json_lines Installation successful
-
重启 logstash,命令:
[root@localhost /]# docker restart logstash
-
查看 logstash 动态日志,命令:
[root@localhost /]# docker logs -f logstash
-
启动成功,如下所示:
[2023-10-10T03:09:37,763][INFO ][org.logstash.beats.Server] Starting server on port: 5044 [2023-10-10T03:09:39,586][INFO ][logstash.agent ] Successfully started Logstash API endpoint {:port=>9600}
注意:如果日志量不大,可以直接使用
logstash
读取springboot日志文件即可,量大的时候logstash
占用内存量偏大,容易宕机
至此,logstash安装完成,等待filebeat输入对应格式的数据
四、离线部署Filebeat:
- 拉取
filebeat:7.4.0
远程仓库安装包,命令(如下所示即为成功
):[root@localhost /]# wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.4.0-linux-x86_64.tar.gz [root@localhost /]# tar -zxvf filebeat-7.4.0-linux-x86_64.tar.gz [root@localhost /]# mv filebeat-7.4.0-linux-x86_64 filebeat [root@localhost /]# cp /opt/filebeat/filebeat.yml /opt/filebeat/filebeat.yml_blk [root@localhost /]# rm -rf /opt/filebeat/filebeat.yml [root@localhost /]# touch /opt/filebeat/filebeat.yml [root@localhost /]# chmod -R 777 /opt/filebeat [root@localhost /]# chmod -R 755 /opt/filebeat/filebeat.yml
- 编辑
filebeat.yml
配置文件,命令:
内容如下:[root@localhost filebeat]# vi /opt/filebeat/filebeat.yml
#[filebeat.yml] #[filebeat.yml] filebeat.inputs: - type: log enabled: true paths: #物理机采集日志目录:这里收集的是springboot项目[user]服务日志 - /opt/logs/demo-elk-server-user/*.log #此处tag在[logstash.conf]中配置使用 tags: ["demo-elk-server-user"] multiline: pattern: ^[0-9]{4} negate: true match: after timeout: 3s - type: log enabled: true paths: #物理机采集日志目录:这里收集的是springboot项目[payment]服务日志 - /opt/logs/demo-elk-server-payment/*.log #此处tag在[logstash.conf]中配置使用 tags: ["demo-elk-server-payment"] multiline: pattern: ^[0-9]{4} negate: true match: after timeout: 3s # ----------- Filebeat modules ----------- filebeat.config.modules: path: /opt/filebeat//modules.d/*.yml reload.enabled: true # ----------- logstash ----------- output.logstash: #192.168.11.40为logstash安装的物理服务器ip hosts: ["192.168.11.40:5044"] enabled: true # ----------- Kibana ----------- setup.kibana: #192.168.11.40为logstash安装的物理服务器ip host: "192.168.11.40:5601" # ----------- elasticsearch ----------- #output.elasticsearch: # hosts: ["192.168.11.40:9200"] # enabled: true
- 新建启动脚本文件
start-filebeat.sh
,命令:
文件内容如下:[root@localhost /]# touch /opt/filebeat/start-filebeat.sh [root@localhost /]# vi /opt/filebeat/start-filebeat.sh
#[start-filebeat.sh] ./opt/filebeat//filebeat -c /opt/filebeat/filebeat.yml &
- 启动
filebeat
并查看动态日志,命令:
启动成功提示,如下所示:[root@localhost /]# sh /opt/filebeat/start-filebeat.sh [root@localhost /]# tailf /opt/filebeat/logs/filebeat
2023-10-10T16:16:33.661+0800 INFO crawler/crawler.go:106 Loading and starting Inputs completed. Enabled inputs: 2 2023-10-10T16:16:33.661+0800 INFO cfgfile/reload.go:171 Config reloader started
五、springboot项目目录结构:
- 使用
linux
tree
命令查看项目目录结构,结果如下(此命令不用执行):[root@localhost java-project]# tree . └── demo-elk-parent ├── demo-elk-server │ ├── demo-elk-server-payment │ │ ├── pom.xml │ │ └── src │ │ └── main │ │ ├── java │ │ │ └── com │ │ │ └── demo │ │ │ └── elk │ │ │ └── payment │ │ │ ├── controller │ │ │ │ └── DemoElkPaymentController.java │ │ │ └── DemoElkServerPaymentApplication.java │ │ └── resources │ │ └── application.yml │ ├── demo-elk-server-user │ │ ├── pom.xml │ │ └── src │ │ └── main │ │ ├── java │ │ │ └── com │ │ │ └── demo │ │ │ └── elk │ │ │ └── user │ │ │ ├── controller │ │ │ │ └── DemoElkUserController.java │ │ │ └── DemoElkServerUserApplication.java │ │ └── resources │ │ └── application.yml │ └── pom.xml └── pom.xml
五、demo-elk-parent项目,文件内容:
pom.xml
文件,代码如下:<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.demo.elk</groupId> <artifactId>demo-elk-parent</artifactId> <packaging>pom</packaging> <version>1.0.0</version> <properties> <!--java、maven--> <java.version>1.8</java.version> <maven.compiler.source>${java.version}</maven.compiler.source> <maven.compiler.target>${java.version}</maven.compiler.target> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <maven.compiler.compilerVersion>${java.version}</maven.compiler.compilerVersion> <!--springboot--> <spring-boot.version>2.3.12.RELEASE</spring-boot.version> <projectlombok.version>1.18.16</projectlombok.version> <!-- plugins --> <maven-resources-plugin.version>3.1.0</maven-resources-plugin.version> <maven-deploy-plugin.version>2.8.2</maven-deploy-plugin.version> <!--other--> <projectlombok.version>1.18.16</projectlombok.version> <jackson-databind.version>2.10.1</jackson-databind.version> <logstash-logback-encoder.version>5.3</logstash-logback-encoder.version> </properties> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> <version>${spring-boot.version}</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> <version>${spring-boot.version}</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <version>${spring-boot.version}</version> <scope>compile</scope> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>${projectlombok.version}</version> <scope>compile</scope> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>${jackson-databind.version}</version> <scope>compile</scope> </dependency> <dependency> <groupId>net.logstash.logback</groupId> <artifactId>logstash-logback-encoder</artifactId> <version>${logstash-logback-encoder.version}</version> </dependency> </dependencies> </dependencyManagement> <build> <pluginManagement> <plugins> <plugin> <artifactId>maven-resources-plugin</artifactId> <version>${maven-resources-plugin.version}</version> </plugin> <plugin> <artifactId>maven-deploy-plugin</artifactId> <version>${maven-deploy-plugin.version}</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>2.18.1</version> <configuration> <skipTests>true</skipTests> </configuration> </plugin> </plugins> </pluginManagement> </build> <modules> <module>demo-elk-server</module> </modules> </project>
六、demo-elk-server项目,文件内容:
pom.xml
文件,代码如下:<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>com.demo.elk</groupId> <artifactId>demo-elk-parent</artifactId> <version>1.0.0</version> </parent> <artifactId>demo-elk-server</artifactId> <packaging>pom</packaging> <modules> <module>demo-elk-server-user</module> <module>demo-elk-server-payment</module> </modules> </project>
七、demo-elk-server-user项目,文件内容:
pom.xml
文件,代码如下:<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>com.demo.elk</groupId> <artifactId>demo-elk-server</artifactId> <version>1.0.0</version> </parent> <artifactId>demo-elk-server-user</artifactId> <description>用户会话服务</description> <packaging>jar</packaging> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <scope>compile</scope> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <scope>compile</scope> </dependency> <!--logstash日志收集--> <dependency> <groupId>net.logstash.logback</groupId> <artifactId>logstash-logback-encoder</artifactId> </dependency> <!--低版本不兼容springboot启动报错:java.lang.ClassNotFoundException:--> <!--com.fasterxml.jackson.databind.ser.std.ToStringSerializerBase--> <!--解决文档链接:https://blog.csdn.net/qq_41486137/article/details/108050370--> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <scope>compile</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <version>${spring-boot.version}</version> <executions> <execution> <goals> <goal>build-info</goal> <goal>repackage</goal> </goals> </execution> </executions> <configuration> <executable>true</executable> </configuration> </plugin> </plugins> </build> </project>
application.yml
文件,代码如下:server: port: 9001 spring: application: name: demo-elk-server-user resources: static-locations: classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/,classpath:/templates/ logging: level: ROOT: INFO file: #保存日志的具体文件夹位置,如果是dicker容器启动jar,需要做目录映射 name: /opt/logs/${spring.application.name}/${spring.application.name}.log max-history: 30 max-size: 100MB #日志格式 pattern: file: "%d{yyyy-MM-dd HH:mm:ss.SSS} [${spring.application.name}] [%thread] %logger{20}[%method,%line] - %msg %exception %n" console: "%d{yyyy-MM-dd HH:mm:ss.SSS} [${spring.application.name}] [%thread] %logger{20}[%method,%line] - %msg %exception %n"
com.demo.elk.user.controller.DemoElkUserController.java
文件,代码如下:package com.demo.elk.user.controller; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; @Slf4j @RestController @RequestMapping("/user") public class DemoElkUserController { @GetMapping(value = "/input-text-out-text") public String inputTextOutText(@RequestParam(name = "text", required = false) String text) { log.info("【demo-elk-server-user】 elk日志收集测试 [info] ======>> text={}", text); log.debug("【demo-elk-server-user】 elk日志收集测试 [debug] ======>> text={}", text); log.warn("【demo-elk-server-user】 elk日志收集测试 [warn] ======>> text={}", text); try { throw new RuntimeException("【demo-elk-server-user】 elk日志收集测试 手动异常抛出"); } catch (Exception e) { log.error("【demo-elk-server-user】 elk异常堆栈信息收集 [error] ======>> text={}", text, e); } return text; } }
八、demo-elk-server-payment项目,文件内容:
pom.xml
文件,代码如下:<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>com.demo.elk</groupId> <artifactId>demo-elk-server</artifactId> <version>1.0.0</version> </parent> <artifactId>demo-elk-server-payment</artifactId> <description>支付服务</description> <packaging>jar</packaging> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <scope>compile</scope> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <scope>compile</scope> </dependency> <!--logstash日志收集--> <dependency> <groupId>net.logstash.logback</groupId> <artifactId>logstash-logback-encoder</artifactId> </dependency> <!--低版本不兼容springboot启动报错:java.lang.ClassNotFoundException:--> <!--com.fasterxml.jackson.databind.ser.std.ToStringSerializerBase--> <!--解决文档链接:https://blog.csdn.net/qq_41486137/article/details/108050370--> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <scope>compile</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <version>${spring-boot.version}</version> <executions> <execution> <goals> <goal>build-info</goal> <goal>repackage</goal> </goals> </execution> </executions> <configuration> <executable>true</executable> </configuration> </plugin> </plugins> </build> </project>
application.yml
文件,代码如下:server: port: 9002 spring: application: name: demo-elk-server-payment resources: static-locations: classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/,classpath:/templates/ logging: level: ROOT: INFO file: #保存日志的具体文件夹位置,如果是dicker容器启动jar,需要做目录映射 name: /opt/logs/${spring.application.name}/${spring.application.name}.log max-history: 30 max-size: 100MB #日志格式 pattern: file: "%d{yyyy-MM-dd HH:mm:ss.SSS} [${spring.application.name}] [%thread] %logger{20}[%method,%line] - %msg %exception %n" console: "%d{yyyy-MM-dd HH:mm:ss.SSS} [${spring.application.name}] [%thread] %logger{20}[%method,%line] - %msg %exception %n"
com.demo.elk.payment.controller.DemoElkPaymentController.java
文件,代码如下:package com.demo.elk.payment.controller; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; @Slf4j @RestController @RequestMapping("/payment") public class DemoElkPaymentController { @GetMapping(value = "/input-text-out-text") public String inputTextOutText(@RequestParam(name = "text", required = false) String text) { log.info("【demo-elk-server-payment】 elk日志收集测试 [info] ======>> text={}", text); log.debug("【demo-elk-server-payment】 elk日志收集测试 [debug] ======>> text={}", text); log.warn("【demo-elk-server-payment】 elk日志收集测试 [warn] ======>> text={}", text); try { throw new RuntimeException("【demo-elk-server-payment】 elk日志收集测试 手动异常抛出"); } catch (Exception e) { log.error("【demo-elk-server-payment】 elk异常堆栈信息收集 [error] ======>> text={}", text, e); } return text; } }
九、打包springboot项目部署:
- 创建运行java服务目录,并使用Windows打出包jar文件,上传jar文件到服务器指定目录,命令:
[root@localhost /]# mkdir -p /opt/java-project/demo-elk-parent/demo-elk-server-user [root@localhost /]# mkdir -p /opt/java-project/demo-elk-parent/demo-elk-server-payment [root@localhost /]# cd /opt/java-project/demo-elk-parent/demo-elk-server-user [root@localhost demo-elk-server-user]# rz [root@localhost /]# cd /opt/java-project/demo-elk-parent/demo-elk-server-payment [root@localhost demo-elk-server-user]# rz
- 创建启动脚本,执行启动脚本:
[root@localhost /]# cd /opt/java-project/demo-elk-parent/demo-elk-server-user [root@localhost demo-elk-server-user]# touch /opt/java-project/demo-elk-parent/demo-elk-server-user/start-java.sh [root@localhost demo-elk-server-user]# vi /opt/java-project/demo-elk-parent/demo-elk-server-user/start-java.sh #[start-java.sh] nohup java -jar demo-elk-server-user-1.0.0.jar & [root@localhost demo-elk-server-user]# sh /opt/java-project/demo-elk-parent/demo-elk-server-user/start-java.sh [root@localhost /]# cd /opt/java-project/demo-elk-parent/demo-elk-server-payment [root@localhost demo-elk-server-payment]# touch /opt/java-project/demo-elk-parent/demo-elk-server-payment/start-java.sh [root@localhost demo-elk-server-payment]# vi /opt/java-project/demo-elk-parent/demo-elk-server-payment/start-java.sh #[start-java.sh] nohup java -jar demo-elk-server-payment-1.0.0.jar & [root@localhost demo-elk-server-payment]# sh /opt/java-project/demo-elk-parent/demo-elk-server-payment/start-java.sh
九、访问springboot项目 & 添加 Kibana 索引模板:
curl
访问springboot项目,插入日志:
[root@localhost /]# curl --location --request GET 'http://192.168.11.40:9001/user/input-text-out-text?text=11111111111111111111111'
[root@localhost /]# curl --location --request GET 'http://192.168.11.40:9002/payment/input-text-out-text?text=22222222222222222222'
-
使用
es-client
查看elasticsearch
索引,下载地址:
-
访问
kibana
添加索引模板,如下所示: