summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2009-11-25 16:14:06 +0100
committerRainer Gerhards <rgerhards@adiscon.com>2009-11-25 16:14:06 +0100
commit809c7e3cdcba3bef8d29702f37c3c8b580c3d1bd (patch)
tree3298915a1d58ebb1bc5409f6541fbdd3f95abf41
parent06b98a56d4422647cffae9b52577cf2ae8aa8991 (diff)
downloadrsyslog-809c7e3cdcba3bef8d29702f37c3c8b580c3d1bd.tar.gz
rsyslog-809c7e3cdcba3bef8d29702f37c3c8b580c3d1bd.tar.xz
rsyslog-809c7e3cdcba3bef8d29702f37c3c8b580c3d1bd.zip
enhanced module debug output
... and addes some (later-to-be-removed) debug code to support finding a problem in transaction handling.
-rw-r--r--action.c3
-rw-r--r--runtime/modules.c30
2 files changed, 30 insertions, 3 deletions
diff --git a/action.c b/action.c
index 07f14c24..f2743124 100644
--- a/action.c
+++ b/action.c
@@ -769,9 +769,11 @@ finishBatch(action_t *pThis)
if(pThis->eState == ACT_STATE_RDY)
FINALIZE; /* nothing to do */
+DBGPRINTF("finishBatch was called\n");
CHKiRet(actionPrepare(pThis));
if(pThis->eState == ACT_STATE_ITX) {
iRet = pThis->pMod->mod.om.endTransaction(pThis->pModData);
+DBGPRINTF("finishBatch returned %d for endTransaction\n", iRet);
switch(iRet) {
case RS_RET_OK:
actionCommitted(pThis);
@@ -884,6 +886,7 @@ submitBatch(action_t *pAction, batch_t *pBatch, int nElem, int *pbShutdownImmedi
bDone = 0;
do {
localRet = tryDoAction(pAction, pBatch, &nElem, pbShutdownImmediate);
+dbgprintf("submitBatch: state of tryDoAction %d\n", localRet);
if(localRet == RS_RET_FORCE_TERM)
FINALIZE;
if( localRet == RS_RET_OK
diff --git a/runtime/modules.c b/runtime/modules.c
index fd3468d8..1af94abc 100644
--- a/runtime/modules.c
+++ b/runtime/modules.c
@@ -472,7 +472,6 @@ doModInit(rsRetVal (*modInit)(int, int*, rsRetVal(**)(), rsRetVal(*)(), modInfo_
localRet = (*pNew->modQueryEtryPt)((uchar*)"endTransaction", &pNew->mod.om.endTransaction);
if(localRet == RS_RET_MODULE_ENTRY_POINT_NOT_FOUND) {
pNew->mod.om.endTransaction = dummyEndTransaction;
- //pNew->mod.om.beginTransaction = dummyEndTransaction;
} else if(localRet != RS_RET_OK) {
ABORT_FINALIZE(localRet);
}
@@ -559,10 +558,35 @@ static void modPrintList(void)
dbgprintf(" module.\n");
dbgprintf("Entry points:\n");
dbgprintf("\tqueryEtryPt: 0x%lx\n", (unsigned long) pMod->modQueryEtryPt);
- dbgprintf("\tdoAction: 0x%lx\n", (unsigned long) pMod->mod.om.doAction);
- dbgprintf("\tparseSelectorAct: 0x%lx\n", (unsigned long) pMod->mod.om.parseSelectorAct);
dbgprintf("\tdbgPrintInstInfo: 0x%lx\n", (unsigned long) pMod->dbgPrintInstInfo);
dbgprintf("\tfreeInstance: 0x%lx\n", (unsigned long) pMod->freeInstance);
+ switch(pMod->eType) {
+ case eMOD_OUT:
+ dbgprintf("Output Module Entry Points:\n");
+ dbgprintf("\tdoAction: 0x%lx\n", (unsigned long) pMod->mod.om.doAction);
+ dbgprintf("\tparseSelectorAct: 0x%lx\n", (unsigned long) pMod->mod.om.parseSelectorAct);
+ dbgprintf("\ttryResume: 0x%lx\n", (unsigned long) pMod->tryResume);
+ dbgprintf("\tdoHUP: 0x%lx\n", (unsigned long) pMod->doHUP);
+ dbgprintf("\tBeginTransaction: 0x%lx\n", (unsigned long)
+ ((pMod->mod.om.beginTransaction == dummyBeginTransaction) ?
+ 0 : pMod->mod.om.beginTransaction));
+ dbgprintf("\tEndTransaction: 0x%lx\n", (unsigned long)
+ ((pMod->mod.om.endTransaction == dummyEndTransaction) ?
+ 0 : pMod->mod.om.endTransaction));
+ break;
+ case eMOD_IN:
+ dbgprintf("Input Module Entry Points\n");
+ dbgprintf("\trunInput: 0x%lx\n", (unsigned long) pMod->mod.im.runInput);
+ dbgprintf("\twillRun: 0x%lx\n", (unsigned long) pMod->mod.im.willRun);
+ dbgprintf("\tafterRun: 0x%lx\n", (unsigned long) pMod->mod.im.afterRun);
+ break;
+ case eMOD_LIB:
+ break;
+ case eMOD_PARSER:
+ dbgprintf("Parser Module Entry Points\n");
+ dbgprintf("\tparse: 0x%lx\n", (unsigned long) pMod->mod.pm.parse);
+ break;
+ }
dbgprintf("\n");
pMod = GetNxt(pMod); /* done, go next */
}