Deploying and Managing Apama Applications > Event Correlator Utilities Reference > Starting the event correlator > Logging correlator status
Logging correlator status
The correlator sends information to its status log file every five seconds or at an interval that you set with the --logQueueSizePeriod option. When logging at INFO level, this information contains the following:
Status: sm=2 nctx=2 ls=3 rq=0 eq=0 iq=0 oq=0 icq=12 lcn="input ctx one"
lcq=12 lct=0.8 rx=5 tx=20 rt=7 nc=1 vm=369768 runq=0 si=0.0 so=0.0
srn="apamacluster1_node3" srq=3
Where the fields are as follows:
Correlator status log fields
Field
Description
sm
Sub-Monitors — Number of monitor instances, sometimes called sub-monitors. This is the sum of monitor instances in the main context plus monitor instances in any other context.
nctx
Number of contexts — For applications developed prior to Apama 4.1, this is always 1.
ls
Listener sum — This is the number of listeners in the main context plus the number of listeners in any other context. This includes each on statement and each stream source template, for example, all Tick(symbol=”APMA”) in the following: stream<Tick> ticks := all Tick(symbol=”APMA”);
rq
Route queue — Sum of the number of routed events on the input queues of all contexts. A routed event is any event that has been generated by EPL’s route keyword or JMon’s route() method. A routed event goes to the front of that context's input queue. This ensures that the correlator processes routed events before processing external events. This number can go up and down, and it tends to be 0 for an idle correlator.
eq
Enqueue queue — Number of events on the enqueued events queue. An enqueued event is any event that has been generated with the EPL enqueue keyword (not enqueue...to) or JMon enqueue() method. A separate thread moves events from the enqueued events queue to the input queue of each public context. The size of the enqueued events queue is unbounded. Consequently, it is possible for this queue to use a large amount of memory if one or more input queues are full.
iq
Input queue — Sum of the number of entries on the input queues of all contexts. This number excludes routed events. It includes events from external sources, injections of EPL files, delete requests, time ticks, pending spawn-to operations, and enqueued events. This number goes up and down, and tends to be 0 for an idle correlator. It is possible for the total number of input queue entries (iq) to be greater than the number of events the correlator has received from external sources (rx).
oq
Output queue — Number of events on the correlator’s output queue. This is the number of events that the correlator has emitted but not yet sent to any receivers. If the correlator is idle, this number is 0.
icq
Sum of enqueued events on the input queues of all public contexts. These events are a subset of the events included in the iq count.
lcn
The name of the public context whose input queue is most backed up in time. This is not necessarily the public context whose input queue has the largest number of entries. If no public context has entries on its input queue then this value is "<none>". The name of the main context is always main.
lcq
For the context identified by lcn, this is the number of entries on the most backed up input queue.
lct
For the context identified by lcn, this is the time difference between its current logical time and the most recent time tick added to its input queue.
rx
Number of events the correlator has received from external sources since the correlator was started. The correlator increments this count as soon as it receives an event. After incrementing this count, the correlator parses the event to determine if it is an event for which a definition has already been injected. If the correlator can successfully parse the event, the event goes to the input queue of each public context. If the correlator cannot parse the event, the correlator discards the event.
This is not the number of events that the correlator has processed. This count does not include routed and enqueued events.
This number never goes down; it can only go up.
tx
Number of events the correlator has sent to receivers since the correlator was started. This number includes duplicate events sent to multiple receivers. For example, suppose you inject EPL code that emits an event, and there are five receivers that are subscribed to channels that publish that event. In this situation, the tx count goes up by five. Although there was 1 event, it was sent five times — once to each subscribed receiver.
rt
Route total —Total number of events that have been routed across all contexts since the correlator was started.
nc
Number of receivers.
vm
Virtual memory — Number of kilobytes of virtual memory being used by the correlator process.
runq
Run queue — Number of contexts (public and private) that have work to do but are not currently running. These contexts are waiting for processing resources. This indicator is a measure of the load on the system. When this number is consistently more than 0 and latency is a problem you might want to consider adding CPUs to your configuration.
si
The rate (pages per second) at which pages are being read from swap space.
so
The rate (pages per second) at which pages are being written to swap space.
srn
Slowest receiver name — The name of the receiver whose queue has the largest number of entries. If no receivers have queue entries then this value is "<none>".
srq
Slowest receiver queue — For the receiver identified by srn, the slowest receiver, this is the number of entries on its queue.
Logging for correlators with correlator-integrated messaging for JMS enabled
Correlators with correlator-integrated messaging for JMS enabled send additional information to the status log file. For details on this information, see Logging correlator-integrated messaging for JMS status.
Copyright © Software AG, Darmstadt, Germany and/or Software AG USA Inc., Reston, VA, USA, and/or its Subsidiaries and or/its Affiliates and/or their licensors.
Use, reproduction, transfer, publication or disclosure is prohibited except as specifically provided for in your License Agreement with Software AG.