使用ELK Stack + Kafka/Redis收集Logback日志

原创
2017/03/31 16:51
阅读数 951

在pom.xml添加依赖(logging-appender可在github中拉取代码自己构建)

<dependency>
        <groupId>org.redisson</groupId>
        <artifactId>redisson</artifactId>
        <version>3.2.3</version>
    </dependency>
    <dependency>
        <groupId>org.apache.kafka</groupId>
        <artifactId>kafka-clients</artifactId>
        <version>0.10.1.1</version>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>net.myscloud.plugin</groupId>
        <artifactId>logging-appender</artifactId>
        <version>1.0-SNAPSHOT</version>
    </dependency>

logback.xml添加Appender

<appender name="Redis" class="net.myscloud.plugin.logging.logback.LogbackAppender">
        <buildStrategy class="net.myscloud.plugin.logging.logback.build.RedisSingleBuildStrategy">
            <config class="net.myscloud.plugin.logging.logback.config.RedisConfig">
                <addresses>127.0.0.1:6379</addresses>
                <topic>redis-log</topic>
            </config>
        </buildStrategy>
        <deliveryStrategy
                class="net.myscloud.plugin.logging.logback.delivery.AsynchronousDeliveryStrategy"/>
        <source>test-application</source>
    </appender>

    <appender name="Kafka" class="net.myscloud.plugin.logging.logback.LogbackAppender">
        <buildStrategy class="net.myscloud.plugin.logging.logback.build.KafkaBuildStrategy">
            <config class="net.myscloud.plugin.logging.logback.config.KafkaConfig">
                <addresses>127.0.0.1:9092</addresses>
                <topic>topic1</topic>
            </config>
        </buildStrategy>
        <deliveryStrategy
                class="net.myscloud.plugin.logging.logback.delivery.AsynchronousDeliveryStrategy"/>
        <source>test-application</source>
    </appender>

日志格式

{
        "@timestamp": "2017-01-17T10:40:53.129+0800",
        "host": "10.2.85.49",
        "level": "WARN",
        "logger": "net.myscloud.plugin.logging.logback.redis.appender.LogbackRedisAppenderTest",
        "message": "test87",
        "source": "test-application",
        "thread": "main"
    }

 

Github地址 https://github.com/jxttian/logging-appender

展开阅读全文
加载中

作者的其它热门文章

打赏
0
1 收藏
分享
打赏
0 评论
1 收藏
0
分享
返回顶部
顶部