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 void
createGroupIntervalLogMessage()
protected String
createLogMessage(org.apache.camel.Exchange exchange, long receivedCount)
void
doStart()
void
doStop()
String
getAction()
double
getAverage()
boolean
getGroupActiveOnly()
long
getGroupDelay()
Long
getGroupInterval()
Integer
getGroupSize()
String
getId()
String
getLastLogMessage()
NumberFormat
getNumberFormat()
double
getRate()
long
getReceivedCounter()
String
getRouteId()
protected double
messagesPerSecond(long messageCount, long startTime, long endTime)
void
process(org.apache.camel.Exchange exchange)
boolean
process(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback)
void
reset()
void
setAction(String action)
void
setGroupDelay(long groupDelay)
void
setGroupInterval(Long groupInterval)
void
setGroupSize(Integer groupSize)
void
setId(String id)
void
setNumberFormat(NumberFormat numberFormat)
void
setRouteId(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:
getId
in interfaceorg.apache.camel.spi.HasId
-
setId
public void setId(String id)
- Specified by:
setId
in interfaceorg.apache.camel.spi.IdAware
-
getRouteId
public String getRouteId()
- Specified by:
getRouteId
in interfaceorg.apache.camel.spi.RouteIdAware
-
setRouteId
public void setRouteId(String routeId)
- Specified by:
setRouteId
in interfaceorg.apache.camel.spi.RouteIdAware
-
process
public void process(org.apache.camel.Exchange exchange) throws Exception
- Specified by:
process
in interfaceorg.apache.camel.Processor
- Overrides:
process
in classAsyncProcessorSupport
- Throws:
Exception
-
process
public boolean process(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback)
- Specified by:
process
in 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:
doStart
in classAsyncProcessorSupport
- Throws:
Exception
-
doStop
public void doStop() throws Exception
- Overrides:
doStop
in 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)
-
-