Docker安装Logstash
2022-04-28 本文已影响0人
花伤情犹在
拉取镜像
docker pull logstash:7.4.2
创建容器
docker run -p 4560:4560 --name logstash -d logstash:7.4.2
创建要挂载的配置目录
mkdir -p /mydata/logstash
设置配置目录权限
sudo chmod -R 777 /mydata/logstash
拷贝Logstash容器内部的配置
docker container cp logstash:/usr/share/logstash/config /mydata/logstash \
& docker container cp logstash:/usr/share/logstash/pipeline /mydata/logstash
停止并删除容器
docker stop logstash & docker rm logstash
重新创建容器
sudo docker run --name logstash \
-p 4560:4560 \
-v /mydata/logstash/config:/usr/share/logstash/config \
-v /mydata/logstash/pipeline:/usr/share/logstash/pipeline \
-d logstash:7.4.2
logback.xml
<?xml version="1.0" encoding="UTF-8"?>
<!--该日志将日志级别不同的log信息保存到不同的文件中 -->
<configuration>
<include resource="org/springframework/boot/logging/logback/defaults.xml"/>
<springProperty scope="context" name="springAppName" source="spring.application.name"/>
<!-- 日志在工程中的输出位置 -->
<property name="LOG_FILE" value="${BUILD_FOLDER:-build}/${springAppName}"/>
<!-- 控制台的日志输出样式 -->
<property name="CONSOLE_LOG_PATTERN"
value="%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}"/>
<!-- 控制台输出 -->
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>INFO</level>
</filter>
<!-- 日志输出编码 -->
<encoder>
<pattern>${CONSOLE_LOG_PATTERN}</pattern>
<charset>utf8</charset>
</encoder>
</appender>
<!-- logstash远程日志配置-->
<appender name="logstash" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
<destination>127.0.0.1:4560</destination>
<encoder charset="UTF-8" class="net.logstash.logback.encoder.LogstashEncoder"/>
</appender>
<!-- 日志输出级别 -->
<root level="DEBUG">
<appender-ref ref="console"/>
<appender-ref ref="logstash"/>
</root>
</configuration>
Logstash依赖
<dependency>
<groupId>net.logstash.logback</groupId>
<artifactId>logstash-logback-encoder</artifactId>
<version>6.3</version>
</dependency>
注意:
导入6.x版本不会在控制台看见任何额外日志信息。
导入5.x版本会在控制台看见logback.xml加载的信息。
Kibana查看日志信息
GET test_log/_search