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
上一篇 下一篇

猜你喜欢

热点阅读