Understand log entries and correlators¶
This page explains how to use log correlators to track the path of a query through multiple KXS process logs.
You can track the path taken by a query through the process logs by using the log correlator. These correlators are contained within a set of curly braces.
Log correlators are used to track queries as they are received and executed by each process in KXS. They are constructed from the calling process's name and a sequence number for the request. When a query is routed to targets, the log correlator is sent as well and specified within the target process' logs.
The request header contains only the sequence number of the request while the response header contains the name of the process issuing the request and its sequence number.
The following example shows the log correlator {maint0-1} for a Maintenance Console request that queries both RDB and HDB.
(maintenance console)
2023.06.28 13:34:57.924 DEBUG [maint0] SAPI {maint0-1} Sending .kxsi.trace to kxsGW_A, corr=1 args=()
2023.06.28 13:34:57.927 DEBUG [maint0] SAPI {maint0-1} .kxsi.trace response received from kxsRP_A1, procs=`kxsGW_A`kxsRP_A1`kxsRDB_A1`kxsHDB_A1 RC=0 (OK) AC=0 (OK) res=([3])
(GW)
2023.06.28 13:34:57.925 INFO [kxsGW_A] GW {maint0-1} .kxsi.trace received from maint0, id=20 ver=1 ip=,`:3639017474:42559 pri=0x30 dur=0x02 nodes= scs=7 9h rps= lr=YN
2023.06.28 13:34:57.925 DEBUG [kxsGW_A] GW {maint0-1} Dispatching .kxsi.trace, id=20 rp=kxsRP_A1 dps=`kxsRDB_A1`kxsHDB_A1
2023.06.28 13:34:57.926 DEBUG [kxsGW_A] GW {maint0-1} Request execution on kxsRDB_A1 complete, id=20 RC=0 (OK) AC=0 (OK)
2023.06.28 13:34:57.926 DEBUG [kxsGW_A] GW {maint0-1} Request execution on kxsHDB_A1 complete, id=20 RC=0 (OK) AC=0 (OK)
(RDB)
2023.06.28 13:34:57.925 DEBUG [kxsRDB_A1] SAPI {maint0-1} Executing .kxsi.trace, corr=1 args=()
2023.06.28 13:34:57.925 DEBUG [kxsRDB_A1] SAPI {maint0-1} .kxsi.trace completed, procs=`kxsGW_A`kxsRP_A1`kxsRDB_A1`kxsHDB_A1 RC=0 (OK) AC=0 (OK) res=([3])
(HDB)
2023.06.28 13:34:57.925 DEBUG [kxsHDB_A1] SAPI {maint0-1} Executing .kxsi.trace, corr=1 args=()
2023.06.28 13:34:57.926 DEBUG [kxsHDB_A1] SAPI {maint0-1} .kxsi.trace completed, procs=`kxsGW_A`kxsRP_A1`kxsRDB_A1`kxsHDB_A1 RC=0 (OK) AC=0 (OK) res=([3])
(RP)
2023.06.28 13:34:57.927 DEBUG [kxsRP_A1] SAPI {maint0-1} Aggregating .kxsi.trace, corr=1 args=(kxsRDB_A1=[3] kxsHDB_A1=[3])
2023.06.28 13:34:57.927 DEBUG [kxsRP_A1] SAPI {maint0-1} .kxsi.trace completed, procs=`kxsGW_A`kxsRP_A1`kxsRDB_A1`kxsHDB_A1 RC=0 (OK) AC=0 (OK) res=([3])