标签: logback

SLF4J 如何支持结构化日志

任何人都知道SLF4J 通常如何实现结构化日志记录

是否有任何开源已经可以处理这个问题?

java logging logback slf4j structured-logging

16
推荐指数
3
解决办法
1万
查看次数

Logback SMTPAppender限制率

如何限制Logback的电子邮件率SMTPAppender,以便每n分钟最多给我发一次电子邮件?

我根据Logback appender设置了我的日志记录,但我不太明白它是如何配置或子类化来实现的.

有隐藏的功能吗?有人开发了一个子类来处理这个问题吗?

java logging logback smtpappender

15
推荐指数
2
解决办法
4775
查看次数

使用logback关闭时是否需要刷新事件?

我们正在从log4j迁移到几个Web应用程序的logback.在关闭我们的应用程序时,我们目前致电:

org.apache.log4j.LogManager.shutdown();
Run Code Online (Sandbox Code Playgroud)

应该刷新所有异步日志记录并关闭所有外部资源(文件,套接字).

在logback中是否存在类似的东西,或者在关闭时是否以某种方式自动刷新?

麦克风

java logback

15
推荐指数
3
解决办法
6170
查看次数

使用logback记录特定类的不同级别?

我是否可以仅使用logback.xml覆盖特定类的日志记录级别?即一切都保留在INFO中,除了一个将登录DEBUG的类.

我在默认值之后附加了这个,但似乎不起作用

<logger name="com.pack1.pack2.paack3.ClassName" additivity="false" level="debug">
    <appender-ref ref="file1"/>
</logger>
Run Code Online (Sandbox Code Playgroud)

谢谢,唐纳德

debugging logging logback

15
推荐指数
3
解决办法
1万
查看次数

Spring boot - 限制为7的备份日志文件数

在我们的spring-boot项目中,我们使用slf4j进行日志记录.以下是我们在application.properties文件中添加的配置

logging.file=/opt/logs/my_log.log
logging.level.org.springframework.web=INFO
logging.level.org.hibernate=INFO
logging.level.nl.yestelecom.boss=DEBUG
logging.level.com.github.isrsal.logging.LoggingFilter=DEBUG
Run Code Online (Sandbox Code Playgroud)

它只生成7个备份文件(my_log.log.1,my_log.log.2 ...,my_log.log.7),每个文件的大小为10.5MB,之后根本不会发生日志记录.

有没有办法改变这种行为?

我们查看了spring-boot的可用属性,但没有找到任何东西.任何建议表示赞赏.

java spring logback slf4j spring-boot

15
推荐指数
2
解决办法
2万
查看次数

使用Logback但Log4j开始显示WARN no Appender

我正在使用logback进行日志记录,但它一直在工作; 前几天我开始收到警告

log4j:WARN没有为logger找到appender(org.apache.axis.i18n.ProjectResourceBundle).log4j:WARN请正确初始化log4j系统.

我没有使用log4j,也没有使用过这个项目.我的资源文件夹中有一个logback.xml.

关于为什么这个警告开始显现的任何想法?

java logging log4j logback slf4j

14
推荐指数
2
解决办法
2万
查看次数

Java:如何将原始JSON记录为JSON,并避免在使用logback/slf4j进行日志记录期间进行转义

我在JAX-RS应用程序中使用带有Logback的SLF4J ...我想以这样的方式登录到JSON,即我的消息不再被编码,而是原始打印到日志文件中:

目前它看起来像这样:

{"@timestamp":1363834123012,"@message":"{\"text\":\"From MLK to Barack 
Ob...\n\"}"
Run Code Online (Sandbox Code Playgroud)

但我希望有这个:

  {"@timestamp":1363834123012,"@message": { "text ": "From MLK to Barack 
Ob...\n\}
Run Code Online (Sandbox Code Playgroud)

原因是我想再次解析JSON并希望避免数据的转义.

我写了一个自定义的logback编码器,但我发现无法避免转义.我可以传递一个对象进行回溯并根据对象的类型更改设置吗?

编辑:我找到了一种方式 - 不完全优雅 - 按照SSCE的要求:

在我的申请中

// SLF4J Logger
private static Logger logger = LoggerFactory.getLogger(MyClass.class);
// A logback? Marker
private Marker foo = MarkerFactory.getMarker("foo");
// Jackson ObjectMapper()
ObjectMapper mapper = new ObjectMapper();

// Log something... 
logger.info(foo, mapper.writeValueAsString(json));
Run Code Online (Sandbox Code Playgroud)

我在这里使用了Logstash-Encoder的变体:https://github.com/logstash/logstash-logback-encoder

package my.package;

import static org.apache.commons.io.IOUtils.*;

import java.io.IOException;
import java.util.Map;
import java.util.Map.Entry;

import org.codehaus.jackson.JsonGenerator.Feature;
import org.codehaus.jackson.JsonNode;
import org.codehaus.jackson.map.ObjectMapper;
import org.codehaus.jackson.node.ObjectNode; …
Run Code Online (Sandbox Code Playgroud)

java logging json logback slf4j

14
推荐指数
2
解决办法
1万
查看次数

Spring Boot jetty/tomcat嵌入式访问日志配置

我配置logback.xml它完美但logback-access.xml不起作用.

在maven pom.xml

   <dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-access</artifactId>
  </dependency>
Run Code Online (Sandbox Code Playgroud)

src/main/resource

logback.xml
logback-access.xml
Run Code Online (Sandbox Code Playgroud)

有没有办法配置访问日志?

logging spring logback access-log spring-boot

14
推荐指数
3
解决办法
2万
查看次数

部署为.war时的Spring-Boot Logging配置

我有一个简单的spring-boot应用程序打包为.war文件,可以部署到外部Tomcat容器.我在类路径(/ WEB-INF/classes)中有一个logback.xml(下面),但是,当部署到Tomcat时,日志不会写入该文件.

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <include resource="org/springframework/boot/logging/logback/base.xml"/>
    <logger name="org.springframework.web" level="DEBUG"/>
</configuration>
Run Code Online (Sandbox Code Playgroud)

tomcat war logback spring-boot

14
推荐指数
1
解决办法
1万
查看次数

Logback-test.xml配置生成两个日志文件而不是一个?

当我停止运行我的spring-boot应用程序时,产生了两个日志文件而不是一个(一个是预期的).

我的Logback-test.xml文件中可能导致此错误的是什么?

的logback-的test.xml:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <timestamp key="myTimestamp" datePattern="yyyy-MM-dd'_'HH-mm-ss.SSS"/>

    <include resource="org/springframework/boot/logging/logback/base.xml"/>

    <logger name="org.springframework.web" level="INFO"/>

    <!-- Send debug messages to System.out -->
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <!-- By default, encoders are assigned the type ch.qos.logback.classic.encoder.PatternLayoutEncoder -->
        <encoder>
            <pattern>%d{HH:mm:ss.SSS}  - %msg%n</pattern>
        </encoder>
    </appender>

    <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">

        <file>C:\path\to\my\file\myLog-${myTimestamp}.log</file>
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
            <Pattern>%d{yyyy-MM-dd_HH:mm:ss.SSS} - %msg%n</Pattern>
        </encoder>

        <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
            <FileNamePattern>myLog.%i{yyyy-MM-dd_HH:mm:ss.SSS}}.log</FileNamePattern>
            <MinIndex>1</MinIndex>
            <MaxIndex>10</MaxIndex>
        </rollingPolicy>

        <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
            <MaxFileSize>2MB</MaxFileSize>
        </triggeringPolicy>

    </appender>

    <logger name="com.my.package" level="INFO" additivity="false">
        <appender-ref ref="STDOUT" />
        <appender-ref ref="FILE" /> …
Run Code Online (Sandbox Code Playgroud)

java logging spring logback spring-boot

14
推荐指数
1
解决办法
3483
查看次数