org.slf4j.helpers.FormattingTuple#getThrowable ( )源码实例Demo

下面列出了org.slf4j.helpers.FormattingTuple#getThrowable ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: azure-cosmosdb-java   文件: RntbdReporter.java
private static void doReportIssue(Logger logger, Object subject, String format, Object[] arguments) {

        FormattingTuple formattingTuple = MessageFormatter.arrayFormat(format, arguments);
        StackTraceElement[] stackTrace = new Exception().getStackTrace();
        Throwable throwable = formattingTuple.getThrowable();

        if (throwable == null) {
            logger.error("Report this {} issue to ensure it is addressed:\n[{}]\n[{}]\n[{}]",
                codeSource, subject, stackTrace[2], formattingTuple.getMessage()
            );
        } else {
            logger.error("Report this {} issue to ensure it is addressed:\n[{}]\n[{}]\n[{}{}]",
                codeSource, subject, stackTrace[2], formattingTuple.getMessage(),
                ExceptionUtils.getStackTrace(throwable)
            );
        }
    }
 
源代码2 项目: HttpSessionReplacer   文件: JDK14LoggerAdapter.java
private LogRecord eventToRecord(LoggingEvent event, Level julLevel) {
    String format = event.getMessage();
    Object[] arguments = event.getArgumentArray();
    FormattingTuple ft = MessageFormatter.arrayFormat(format, arguments);
    if (ft.getThrowable() != null && event.getThrowable() != null) {
        throw new IllegalArgumentException("both last element in argument array and last argument are of type Throwable");
    }

    Throwable t = event.getThrowable();
    if (ft.getThrowable() != null) {
        t = ft.getThrowable();
        throw new IllegalStateException("fix above code");
    }

    LogRecord record = new LogRecord(julLevel, ft.getMessage());
    record.setLoggerName(event.getLoggerName());
    record.setMillis(event.getTimeStamp());
    record.setSourceClassName(EventConstants.NA_SUBST);
    record.setSourceMethodName(EventConstants.NA_SUBST);

    record.setThrown(t);
    return record;
}
 
源代码3 项目: slf4android   文件: MessageValueSupplier.java
@SuppressWarnings("ThrowableResultOfMethodCallIgnored")
@Override
public void append(LogRecord record, StringBuilder builder) {
    FormattingTuple formattingTuple = MessageFormatter.arrayFormat(record.getMessage(), record.getParameters());
    String message = formattingTuple.getMessage();
    Throwable throwable = formattingTuple.getThrowable();
    if (throwable != null) {
        StringWriter writer = new StringWriter(100);
        PrintWriter printWriter = new PrintWriter(writer);
        throwable.printStackTrace(printWriter);
        printWriter.flush();
        printWriter.close();
        writer.flush();
        message += " " + writer.toString();
    }
    builder.append(message);
}
 
源代码4 项目: eclair   文件: JavaLoggerFacade.java
@Override
public void log(LogLevel level, String format, Object... arguments) {
    FormattingTuple formattingTuple = MessageFormatter.arrayFormat(format, arguments);
    String message = formattingTuple.getMessage();
    Throwable throwable = formattingTuple.getThrowable();
    logger.log(LEVELS.get(level), message, throwable);
}
 
源代码5 项目: xltsearch   文件: MessageLogger.java
private void add(Message.Level level, FormattingTuple tp) {
    if (tp.getThrowable() == null) {
        add(level, tp.getMessage());
    } else {
        add(level, tp.getMessage(), tp.getThrowable());
    }
}
 
源代码6 项目: deadcode4j   文件: LoggerForMavenLog.java
@SuppressWarnings("ThrowableResultOfMethodCallIgnored")
private void doInfo(FormattingTuple tuple) {
    if (tuple.getThrowable() == null) {
        log.info(tuple.getMessage());
    } else {
        log.info(tuple.getMessage(), tuple.getThrowable());
    }
}
 
源代码7 项目: deadcode4j   文件: LoggerForMavenLog.java
@SuppressWarnings("ThrowableResultOfMethodCallIgnored")
private void doWarn(FormattingTuple tuple) {
    if (tuple.getThrowable() == null) {
        log.warn(tuple.getMessage());
    } else {
        log.warn(tuple.getMessage(), tuple.getThrowable());
    }
}
 
源代码8 项目: deadcode4j   文件: LoggerForMavenLog.java
@SuppressWarnings("ThrowableResultOfMethodCallIgnored")
private void doError(FormattingTuple tuple) {
    if (tuple.getThrowable() == null) {
        log.error(tuple.getMessage());
    } else {
        log.error(tuple.getMessage(), tuple.getThrowable());
    }
}
 
源代码9 项目: catnip   文件: DefaultLogAdapter.java
@Override
public void log(@Nonnull final Level level, @Nonnull final String message, @Nullable final Object... objects) {
    //noinspection OptionalGetWithoutIsPresent
    final Class<?> caller = stackWalker.walk(s -> s.skip(2).findFirst()).get().getDeclaringClass();
    final Logger logger = LoggerFactory.getLogger(caller);
    final FormattingTuple tuple = MessageFormatter.arrayFormat(message, objects);
    final String formatted = tuple.getMessage();
    if(logger != null) {
        switch(level) {
            case TRACE: {
                logger.trace(formatted);
                if(tuple.getThrowable() != null) {
                    logger.trace("Stacktrace: ", tuple.getThrowable());
                }
                break;
            }
            case DEBUG: {
                logger.debug(formatted);
                if(tuple.getThrowable() != null) {
                    logger.debug("Stacktrace: ", tuple.getThrowable());
                }
                break;
            }
            case INFO: {
                logger.info(formatted);
                if(tuple.getThrowable() != null) {
                    logger.info("Stacktrace: ", tuple.getThrowable());
                }
                break;
            }
            case WARN: {
                logger.warn(formatted);
                if(tuple.getThrowable() != null) {
                    logger.warn("Stacktrace: ", tuple.getThrowable());
                }
                break;
            }
            case ERROR: {
                logger.error(formatted);
                if(tuple.getThrowable() != null) {
                    logger.error("Stacktrace: ", tuple.getThrowable());
                }
                break;
            }
        }
    }
}
 
源代码10 项目: dolphin-platform   文件: DolphinLogger.java
private void log(final Level level, final Marker marker, final String msg, final Throwable throwable, final Object... arguments) {
    Objects.requireNonNull(level);

    if (DolphinLoggerUtils.isLevelEnabled(this.level, level)) {
        final List<String> tempMarkers = new ArrayList<>();
        if(marker != null) {
            tempMarkers.addAll(convert(marker));
        }
        final List<String> currentMarkers = new ArrayList<>();
        currentMarkers.addAll(addMarkers(tempMarkers));
        currentMarkers.addAll(loggerFactory.getMarkers());
        try {
            final LogMessage logMessage = new LogMessage();
            logMessage.setLoggerName(name);
            logMessage.setLevel(level);
            logMessage.setMessage(msg);
            logMessage.setTimestamp(ZonedDateTime.now());
            logMessage.setThreadName(Thread.currentThread().getName());


            final Map<String, String> context = new HashMap<>();
            ContextManagerImpl.getInstance().getGlobalContexts().forEach(c -> context.put(c.getType(), c.getValue()));
            ContextManagerImpl.getInstance().getThreadContexts().forEach(c -> context.put(c.getType(), c.getValue()));
            logMessage.setContext(Collections.unmodifiableMap(context));

            logMessage.setMarker(currentMarkers);

            if (throwable != null) {
                logMessage.setThrowable(throwable);
            }

            if (arguments != null && arguments.length > 0) {
                final FormattingTuple tp = MessageFormatter.arrayFormat(msg, arguments);
                logMessage.setMessage(tp.getMessage());
                if(logMessage.getThrowable() == null && tp.getThrowable() != null) {
                    logMessage.setThrowable(tp.getThrowable());
                }
            }

            loggerFactory.addToCache(logMessage);

            for(DolphinLoggerBridge bridge : bridges) {
                try {
                    bridge.log(logMessage);
                } catch (Exception e) {
                    System.err.println("Error in Logger: " + e.getMessage());
                }
            }

        } finally {
            removeMarkers(tempMarkers);
        }
    }
}