level: ERROR
location: com.volcengine.service.tls.logback.example.LogbackAppenderExample.main(LogbackAppenderExample.java:18)
message: this is an error log
throwable: java.lang.RuntimeException: xxx
thread: main
time: 2023-10-24T12:00+0000
log: 2023-10-24 12:00:00,000 ERROR [main] com.volcengine.service.tls.logback.example.LogbackAppenderExample: this is an error log
__source__: 192.168.1.100
__path__: sys.log
package com.volcengine.service.tls.logback.example;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.slf4j.MDC;
public class LogbackAppenderExample {
private static final Logger LOGGER = LoggerFactory.getLogger(LogbackAppenderExample.class);
public static void main(String[] args) {
MDC.put("MDC_KEY","MDC_VALUE");
MDC.put("THREAD_ID", String.valueOf(Thread.currentThread().getId()));
LOGGER.trace("This is a trace log.");
LOGGER.debug("This is a debug log.");
LOGGER.info("This is a info log.");
LOGGER.warn("This is a warn log.");
LOGGER.error("This is an error log.");
}
}
火山引擎日志服务(TLS)Logback Appender
TLS Logback Appender
Logback是由Log4j创始人设计的又一个开源日志组件。 通过使用Logback,您可以控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等; 您也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,您能够更加细致地控制日志的生成过程。 最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。
通过火山引擎日志服务TLS Logback Appender,您可以将日志上报至火山引擎日志服务,写到日志服务中的日志的样式如下:
其中:
功能优势
使用说明
1. maven 工程中引入依赖
2. 修改配置文件
在logback.xml文件中配置火山引擎日志服务Logback Appender,绑定com.volcengine.service.tls.logback.LogbackAppender类即可。
本项目提供了一段具体的配置示例如下所示(logback-example.xml),可供您参考。 该示例文件注册了两个Logback Appender,可分别将您的日志打印到控制台并上报到火山引擎日志服务。
在示例配置文件中,详细标注了日志服务Logback Appender必填和选填参数。其中,关于TLS Java Producer的自定义配置,您可参考GitHub获取相应参数的信息。
注意:
DelayingShutdownHook标签,以防止进程退出时日志服务LogbackAppender缓存在内存中的少量数据丢失。BasicStatusManager类中,您可以通过配置OnConsoleStatusListener或其他方式查看出错信息。更多信息可参阅:https://logback.qos.ch/access.html3. 使用原有Logback日志输出代码上报日志
本项目中的LogbackAppenderExample代码文件展示了最简单的通过Logback输出日志的示例。 当您实例化Logger对象后,通过trace/debug/info/warn/error方法即可将您的日志输出到logback.xml文件中配置的目的地。
当您根据步骤2修改了logback.xml配置文件后,您无需再修改系统中原有的输出日志相关的代码。