config = config.handlers(Handlers.chain(chain.toArray(new LogRecordHandler[chain.size()]), Handlers.output));
File logFile = new File(props.getProperty(HybridCorefProperties.LOG_PROP)); RedwoodConfiguration.current().handlers( RedwoodConfiguration.Handlers.file(logFile)).apply(); Redwood.log("Starting coref log");
public void initLog(File logFilePath) throws IOException { RedwoodConfiguration.empty() .handlers(RedwoodConfiguration.Handlers.chain( RedwoodConfiguration.Handlers.showAllChannels(), RedwoodConfiguration.Handlers.stderr), RedwoodConfiguration.Handlers.file(logFilePath.toString()) ).apply(); // fh.setFormatter(new NewlineLogFormatter()); System.out.println("Starting Ssurgeon log, at "+logFilePath.getAbsolutePath()+" date=" + DateFormat.getDateInstance(DateFormat.FULL).format(new Date())); log.info("Starting Ssurgeon log, date=" + DateFormat.getDateInstance(DateFormat.FULL).format(new Date())); }
File logFile = new File(props.getProperty(HybridCorefProperties.LOG_PROP)); RedwoodConfiguration.current().handlers( RedwoodConfiguration.Handlers.file(logFile)).apply(); Redwood.log("Starting coref log");
config = config.handlers(Handlers.chain(chain.toArray(new LogRecordHandler[chain.size()]), Handlers.output));
config = config.handlers(Handlers.chain(chain.toArray(new LogRecordHandler[chain.size()]), Handlers.output));
config = config.handlers(Handlers.chain(chain.toArray(new LogRecordHandler[chain.size()]), Handlers.output));
public RedwoodConfiguration listenOnChannels(Consumer<Redwood.Record> listener, Object... channels) { return this.handlers( Handlers.chain(new FilterHandler(Collections.singletonList(new LogFilter() { Set<Object> matchAgainst = new HashSet<>(Arrays.asList(channels)); @Override public boolean matches(Redwood.Record message) { for (Object channel : message.channels()) { if (matchAgainst.contains(channel)) { return true; } } return false; } }), true), (config, root) -> { root.addChild(new LogRecordHandler() { @Override public List<Redwood.Record> handle(Redwood.Record record) { listener.accept(record); return Collections.singletonList(record); } }); })); }
public RedwoodConfiguration listenOnChannels(Consumer<Redwood.Record> listener, Object... channels) { return this.handlers( Handlers.chain(new FilterHandler(Collections.singletonList(new LogFilter() { Set<Object> matchAgainst = new HashSet<>(Arrays.asList(channels)); @Override public boolean matches(Redwood.Record message) { for (Object channel : message.channels()) { if (matchAgainst.contains(channel)) { return true; } } return false; } }), true), (config, root) -> { root.addChild(new LogRecordHandler() { @Override public List<Redwood.Record> handle(Redwood.Record record) { listener.accept(record); return Collections.singletonList(record); } }); })); }
/** @see Handlers#chain(LogRecordHandler[], Thunk) */ public static Thunk chain(LogRecordHandler handler1, LogRecordHandler handler2, LogRecordHandler handler3, LogRecordHandler handler4, LogRecordHandler handler5, Thunk destination) { return chain(new LogRecordHandler[]{ handler1, handler2, handler3, handler4, handler5 }, destination); }
/** @see #chain(LogRecordHandler[], RedwoodConfiguration.Thunk) */ public static Thunk chain(LogRecordHandler handler1, LogRecordHandler handler2, LogRecordHandler handler3, LogRecordHandler handler4, LogRecordHandler handler5, Thunk destination) { return chain(new LogRecordHandler[]{ handler1, handler2, handler3, handler4, handler5 }, destination); }
/** Run Redwood with SLF4J if available, otherwise with stderr logging at the warning (and error) level. * @return A redwood configuration. Remember to call {@link RedwoodConfiguration#apply()}. */ public static RedwoodConfiguration infoLevel() { RedwoodConfiguration config; try { MetaClass.create("org.slf4j.LoggerFactory").createInstance(); config = new RedwoodConfiguration().clear().handlers( Handlers.chain(Handlers.hideChannels(Redwood.DBG), Handlers.slf4j)); } catch (Exception ignored) { config = new RedwoodConfiguration().clear().handlers( Handlers.chain(Handlers.hideChannels(Redwood.DBG), Handlers.stderr)); } return config; }
/** @see Handlers#chain(LogRecordHandler[], Thunk) */ public static Thunk chain(LogRecordHandler handler1, Thunk destination) { return chain(new LogRecordHandler[]{ handler1 }, destination); } /** @see Handlers#chain(LogRecordHandler[], Thunk) */
/** @see #chain(LogRecordHandler[], RedwoodConfiguration.Thunk) */ public static Thunk chain(LogRecordHandler handler1, LogRecordHandler handler2, LogRecordHandler handler3, LogRecordHandler handler4, Thunk destination) { return chain(new LogRecordHandler[]{ handler1, handler2, handler3, handler4 }, destination); } /** @see #chain(LogRecordHandler[], RedwoodConfiguration.Thunk) */
/** Run Redwood with SLF4J if available, otherwise with stderr logging at the error only level. * @return A redwood configuration. Remember to call {@link RedwoodConfiguration#apply()}. */ public static RedwoodConfiguration errorLevel() { RedwoodConfiguration config; try { MetaClass.create("org.slf4j.LoggerFactory").createInstance(); config = new RedwoodConfiguration().clear().handlers( Handlers.chain(Handlers.showOnlyError, Handlers.slf4j)); } catch (Exception ignored) { config = new RedwoodConfiguration().clear().handlers( Handlers.chain(Handlers.showOnlyError, Handlers.stderr)); } return config; }
/** Run Redwood with SLF4J if available, otherwise with stderr logging at the debug (everything) level. * @return A redwood configuration. Remember to call {@link RedwoodConfiguration#apply()}. */ public static RedwoodConfiguration debugLevel() { RedwoodConfiguration config; try { MetaClass.create("org.slf4j.LoggerFactory").createInstance(); config = new RedwoodConfiguration().clear().handlers( Handlers.chain(Handlers.showAllChannels(), Handlers.slf4j)); } catch (Exception ignored) { config = new RedwoodConfiguration().clear().handlers( Handlers.chain(Handlers.showAllChannels(), Handlers.stderr)); } return config; }
/** @see #chain(LogRecordHandler[], RedwoodConfiguration.Thunk) */ public static Thunk chain(LogRecordHandler handler1, LogRecordHandler handler2, LogRecordHandler handler3, LogRecordHandler handler4, Thunk destination) { return chain(new LogRecordHandler[]{ handler1, handler2, handler3, handler4 }, destination); } /** @see #chain(LogRecordHandler[], RedwoodConfiguration.Thunk) */
/** @see #chain(LogRecordHandler[], RedwoodConfiguration.Thunk) */ public static Thunk chain(LogRecordHandler handler1, LogRecordHandler handler2, LogRecordHandler handler3, LogRecordHandler handler4, LogRecordHandler handler5, Thunk destination) { return chain(new LogRecordHandler[]{ handler1, handler2, handler3, handler4, handler5 }, destination); }
/** @see Handlers#chain(LogRecordHandler[], Thunk) */ public static Thunk chain(LogRecordHandler handler1, LogRecordHandler handler2, Thunk destination) { return chain(new LogRecordHandler[]{ handler1, handler2 }, destination); } /** @see Handlers#chain(LogRecordHandler[], Thunk) */
/** @see #chain(LogRecordHandler[], RedwoodConfiguration.Thunk) */ public static Thunk chain(LogRecordHandler handler1, LogRecordHandler handler2, LogRecordHandler handler3, Thunk destination) { return chain(new LogRecordHandler[]{ handler1, handler2, handler3 }, destination); } /** @see #chain(LogRecordHandler[], RedwoodConfiguration.Thunk) */