public class ThroughputLogger extends ServiceSupport implements AsyncProcessor, IdAware
shutdown, shuttingdown, started, starting, stopped, stopping, suspended, suspending
Constructor and Description |
---|
ThroughputLogger(CamelLogger log) |
ThroughputLogger(CamelLogger log,
CamelContext camelContext,
Long groupInterval,
Long groupDelay,
Boolean groupActiveOnly) |
ThroughputLogger(CamelLogger log,
Integer groupSize) |
Modifier and Type | Method and Description |
---|---|
protected void |
createGroupIntervalLogMessage() |
protected String |
createLogMessage(Exchange exchange,
int receivedCount) |
void |
doStart()
Implementations override this method to support customized start/stop.
|
void |
doStop()
Implementations override this method to support customized start/stop.
|
String |
getAction() |
double |
getAverage() |
boolean |
getGroupActiveOnly() |
long |
getGroupDelay() |
Long |
getGroupInterval() |
Integer |
getGroupSize() |
String |
getId()
Returns the id
|
String |
getLastLogMessage() |
NumberFormat |
getNumberFormat() |
double |
getRate() |
int |
getReceivedCounter() |
protected double |
messagesPerSecond(long messageCount,
long startTime,
long endTime) |
void |
process(Exchange exchange)
Processes the message exchange
|
boolean |
process(Exchange exchange,
AsyncCallback callback)
Processes the message exchange.
|
void |
reset() |
void |
setAction(String action) |
void |
setGroupDelay(long groupDelay) |
void |
setGroupInterval(Long groupInterval) |
void |
setGroupSize(Integer groupSize) |
void |
setId(String id)
Sets the id
|
void |
setNumberFormat(NumberFormat numberFormat) |
doResume, doShutdown, doSuspend, getStatus, getVersion, isRunAllowed, isStarted, isStarting, isStopped, isStopping, isStoppingOrStopped, isSuspended, isSuspending, isSuspendingOrSuspended, resume, shutdown, start, stop, suspend
public ThroughputLogger(CamelLogger log)
public ThroughputLogger(CamelLogger log, Integer groupSize)
public ThroughputLogger(CamelLogger log, CamelContext camelContext, Long groupInterval, Long groupDelay, Boolean groupActiveOnly)
public void process(Exchange exchange) throws Exception
Processor
public boolean process(Exchange exchange, AsyncCallback callback)
AsyncProcessor
Processor.process(org.apache.camel.Exchange)
, but the caller supports having the exchange asynchronously processed.
If there was a failure processing then the caused Exception
would be set on the Exchange
.process
in interface AsyncProcessor
exchange
- the message exchangecallback
- the AsyncCallback
will be invoked when the processing of the exchange is completed.
If the exchange is completed synchronously, then the callback is also invoked synchronously.
The callback should therefore be careful of starting recursive loop.public Integer getGroupSize()
public void setGroupSize(Integer groupSize)
public Long getGroupInterval()
public void setGroupInterval(Long groupInterval)
public long getGroupDelay()
public void setGroupDelay(long groupDelay)
public boolean getGroupActiveOnly()
public NumberFormat getNumberFormat()
public void setNumberFormat(NumberFormat numberFormat)
public void reset()
public double getRate()
public double getAverage()
public int getReceivedCounter()
public String getLastLogMessage()
public void doStart() throws Exception
ServiceSupport
ServiceSupport.doStop()
for more details.doStart
in class ServiceSupport
Exception
ServiceSupport.doStop()
public void doStop() throws Exception
ServiceSupport
ServiceSupport.doStop()
method when
the service is being stopped. This method will also be invoked
if the service is still in uninitialized state (eg has not
been started). The method is always called to allow the service
to do custom logic when the service is being stopped, such as when
CamelContext
is shutting down.doStop
in class ServiceSupport
Exception
ServiceSupport.doStart()
protected String createLogMessage(Exchange exchange, int receivedCount)
protected void createGroupIntervalLogMessage()
protected double messagesPerSecond(long messageCount, long startTime, long endTime)
Apache Camel