Class ThroughputLogger
- java.lang.Object
-
- org.apache.camel.support.service.BaseService
-
- org.apache.camel.support.service.ServiceSupport
-
- org.apache.camel.support.AsyncProcessorSupport
-
- org.apache.camel.support.processor.ThroughputLogger
-
- All Implemented Interfaces:
AutoCloseable,org.apache.camel.AsyncProcessor,org.apache.camel.Processor,org.apache.camel.Service,org.apache.camel.ShutdownableService,org.apache.camel.spi.HasId,org.apache.camel.spi.IdAware,org.apache.camel.spi.RouteIdAware,org.apache.camel.StatefulService,org.apache.camel.SuspendableService
public class ThroughputLogger extends AsyncProcessorSupport implements org.apache.camel.AsyncProcessor, org.apache.camel.spi.IdAware, org.apache.camel.spi.RouteIdAware
A logger for logging message throughput.
-
-
Constructor Summary
Constructors Constructor Description ThroughputLogger(org.apache.camel.spi.CamelLogger logger)ThroughputLogger(org.apache.camel.spi.CamelLogger logger, Integer groupSize)ThroughputLogger(org.apache.camel.spi.CamelLogger logger, org.apache.camel.CamelContext camelContext, Long groupInterval, Long groupDelay, Boolean groupActiveOnly)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidcreateGroupIntervalLogMessage()protected StringcreateLogMessage(org.apache.camel.Exchange exchange, long receivedCount)voiddoStart()voiddoStop()StringgetAction()doublegetAverage()booleangetGroupActiveOnly()longgetGroupDelay()LonggetGroupInterval()IntegergetGroupSize()StringgetId()StringgetLastLogMessage()NumberFormatgetNumberFormat()doublegetRate()longgetReceivedCounter()StringgetRouteId()protected doublemessagesPerSecond(long messageCount, long startTime, long endTime)voidprocess(org.apache.camel.Exchange exchange)booleanprocess(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback)voidreset()voidsetAction(String action)voidsetGroupDelay(long groupDelay)voidsetGroupInterval(Long groupInterval)voidsetGroupSize(Integer groupSize)voidsetId(String id)voidsetNumberFormat(NumberFormat numberFormat)voidsetRouteId(String routeId)-
Methods inherited from class org.apache.camel.support.AsyncProcessorSupport
processAsync
-
Methods inherited from class org.apache.camel.support.service.BaseService
build, doBuild, doFail, doInit, doLifecycleChange, doResume, doShutdown, doSuspend, fail, getStatus, init, isBuild, isInit, isNew, isRunAllowed, isShutdown, isStarted, isStarting, isStartingOrStarted, isStopped, isStopping, isStoppingOrStopped, isSuspended, isSuspending, isSuspendingOrSuspended, resume, shutdown, start, stop, suspend
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
-
-
-
Constructor Detail
-
ThroughputLogger
public ThroughputLogger(org.apache.camel.spi.CamelLogger logger)
-
ThroughputLogger
public ThroughputLogger(org.apache.camel.spi.CamelLogger logger, Integer groupSize)
-
-
Method Detail
-
getId
public String getId()
- Specified by:
getIdin interfaceorg.apache.camel.spi.HasId
-
setId
public void setId(String id)
- Specified by:
setIdin interfaceorg.apache.camel.spi.IdAware
-
getRouteId
public String getRouteId()
- Specified by:
getRouteIdin interfaceorg.apache.camel.spi.RouteIdAware
-
setRouteId
public void setRouteId(String routeId)
- Specified by:
setRouteIdin interfaceorg.apache.camel.spi.RouteIdAware
-
process
public void process(org.apache.camel.Exchange exchange) throws Exception- Specified by:
processin interfaceorg.apache.camel.Processor- Overrides:
processin classAsyncProcessorSupport- Throws:
Exception
-
process
public boolean process(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback)- Specified by:
processin interfaceorg.apache.camel.AsyncProcessor
-
getGroupSize
public Integer getGroupSize()
-
setGroupSize
public void setGroupSize(Integer groupSize)
-
getGroupInterval
public Long getGroupInterval()
-
setGroupInterval
public void setGroupInterval(Long groupInterval)
-
getGroupDelay
public long getGroupDelay()
-
setGroupDelay
public void setGroupDelay(long groupDelay)
-
getGroupActiveOnly
public boolean getGroupActiveOnly()
-
getNumberFormat
public NumberFormat getNumberFormat()
-
setNumberFormat
public void setNumberFormat(NumberFormat numberFormat)
-
getAction
public String getAction()
-
setAction
public void setAction(String action)
-
reset
public void reset()
-
getRate
public double getRate()
-
getAverage
public double getAverage()
-
getReceivedCounter
public long getReceivedCounter()
-
getLastLogMessage
public String getLastLogMessage()
-
doStart
public void doStart() throws Exception- Overrides:
doStartin classAsyncProcessorSupport- Throws:
Exception
-
doStop
public void doStop() throws Exception- Overrides:
doStopin classAsyncProcessorSupport- Throws:
Exception
-
createLogMessage
protected String createLogMessage(org.apache.camel.Exchange exchange, long receivedCount)
-
createGroupIntervalLogMessage
protected void createGroupIntervalLogMessage()
-
messagesPerSecond
protected double messagesPerSecond(long messageCount, long startTime, long endTime)
-
-