001/* 002 * The contents of this file are subject to the license and copyright 003 * detailed in the LICENSE and NOTICE files at the root of the source 004 * tree. 005 */ 006package org.fcrepo.camel.common; 007 008import org.apache.camel.impl.engine.DefaultTracer; 009import org.slf4j.Logger; 010 011/** 012 * A test tracer for logging camel routes under our control. 013 * @author whikloj 014 * 015 * To use, before adapting the context add camelContext.setTracer(new TestTracer(logger)); 016 * i.e. 017 * final Logger LOGGER = LoggerFactory.getLogger(FcrepoSolrIndexer.class); 018 * camelContext.setTracer(new TestTracer(LOGGER)); 019 * final var context = camelContext.adapt(ModelCamelContext.class); 020 * AdviceWith.adviceWith(context, "FcrepoSolrIndexer", a -%lt; { 021 */ 022public class TestTracer extends DefaultTracer { 023 private final Logger LOGGER; 024 025 public TestTracer(final Logger logger) { 026 super(); 027 this.LOGGER = logger; 028 this.setTracePattern("%-4.4s [%-20.20s] [%-40.40s]"); 029 } 030 031 @Override 032 protected void dumpTrace(final String out) { 033 LOGGER.info(out); 034 } 035}