public void info(Object message) {
if (logger.isInfoEnabled()) {
forcedLog(logger, Level.INFO, message);
}
}
public void info(Object message, Throwable t) {
if (logger.isInfoEnabled()) {
forcedLog(logger, Level.INFO, message, t);
}
}
public void info(String pattern, Object... arguments) {
if (logger.isInfoEnabled()) {
forcedLog(logger, Level.INFO, format(pattern, arguments));
}
}
public void info(String pattern, Throwable t, Object... arguments) {
if (logger.isInfoEnabled()) {
forcedLog(logger, Level.INFO, format(pattern, arguments), t);
}
}
public void warn(Object message) {
if (logger.isEnabledFor(Level.WARN)) {
forcedLog(logger, Level.WARN, message);
}
}
public void warn(Object message, Throwable t) {
if (logger.isEnabledFor(Level.WARN)) {
forcedLog(logger, Level.WARN, message, t);
}
}
public void warn(String pattern, Object... arguments) {
if (logger.isEnabledFor(Level.WARN)) {
forcedLog(logger, Level.WARN, format(pattern, arguments));
}
}
public void warn(String pattern, Throwable t, Object... arguments) {
if (logger.isEnabledFor(Level.WARN)) {
forcedLog(logger, Level.WARN, format(pattern, arguments), t);
}
}
public void error(Object message) {
if (logger.isEnabledFor(Level.ERROR)) {
forcedLog(logger, Level.ERROR, message);
}
}
public void error(Object message, Throwable t) {
if (logger.isEnabledFor(Level.ERROR)) {
forcedLog(logger, Level.ERROR, message, t);
}
}
public void error(String pattern, Object... arguments) {
if (logger.isEnabledFor(Level.ERROR)) {
forcedLog(logger, Level.ERROR, format(pattern, arguments));
}
}
public void error(String pattern, Throwable t, Object... arguments) {
if (logger.isEnabledFor(Level.ERROR)) {
forcedLog(logger, Level.ERROR, format(pattern, arguments), t);
}
}
public void fatal(Object message) {
if (logger.isEnabledFor(Level.FATAL)) {
forcedLog(logger, Level.FATAL, message);
}
}
public void fatal(Object message, Throwable t) {
if (logger.isEnabledFor(Level.FATAL)) {
forcedLog(logger, Level.FATAL, message, t);
}
}
public void fatal(String pattern, Object... arguments) {
if (logger.isEnabledFor(Level.FATAL)) {
forcedLog(logger, Level.FATAL, format(pattern, arguments));
}
}
public void fatal(String pattern, Throwable t, Object... arguments) {
if (logger.isEnabledFor(Level.FATAL)) {
forcedLog(logger, Level.FATAL, format(pattern, arguments), t);
}
}
public void assertLog(boolean assertion, String message) {
if (!assertion) {
forcedLog(logger, Level.ERROR, message);
}
}
private static void forcedLog(Logger logger, Level level, Object message) {
logger.callAppenders(new LoggingEvent(FQCN, logger, level, message, null));
}
private static void forcedLog(Logger logger, Level level, Object message, Throwable t) {
logger.callAppenders(new LoggingEvent(FQCN, logger, level, message, t));
}
private static String format(String pattern, Object... arguments) {
return MessageFormat.format(pattern, arguments);
}
}
分享到:
相关推荐
iptables -I INPUT 2 -i lo -j ACCEPT ``` 9. **允许已建立连接的数据包**: ```bash iptables -I INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT ``` 通过以上示例,我们可以看到iptables的强大功能...
- **日志系统**:LOG4J2是Apache的一个高性能、灵活的日志框架,比老版本LOG4J具有更好的性能和更多的功能。 - **配置灵活性**:使用JSON或XML配置,提供动态日志级别调整,支持异步日志记录,提高应用性能。 - *...
它还具有极低的湿度敏感度,符合J-STD-020标准的1级。器件端子采用镀锡铜引线框,并按照MIL-STD-202, Method 208e进行焊接。器件的重量大约为0.027克,非常轻便。 对于此类MOSFET的应用,其广泛适用于通用接口开关...
- **日志框架**:支持 Log4j、SLF4J 等日志框架。 ##### 3.7 实现 NamingStrategy - **命名策略**:可以自定义命名策略,控制 Hibernate 如何生成表名和字段名。 ##### 3.8 XML 配置文件 - **配置示例**:`...
1. 输入信号:产品支持的热电偶类型为J、K、E、T、R、S、B、N等标准热电偶型号,其输入信号包括电流和电压,具体为4-20mA、0-20mA、1-5V、0-5V、0-10V等多种选择。 2. 输入阻抗:在不同的输入信号范围内,输入阻抗...
首先,创建一个Util类,用于封装两个重命名的方法:sort和reName。 sort方法 sort方法用于将文件名按照指定数字往后排。该方法的实现代码如下: ```java public static void sort(int startNum, String url) { ...