Hello Rainer, what's your general position on this? Do you think dropping messages is better than duplicating em?
On Fri, Apr 1, 2016 at 7:03 AM, Rainer Gerhards <[email protected]> wrote: > 2016-04-01 15:58 GMT+02:00 Kane Kim <[email protected]>: > > Bump, Rainer, what's your thoughts on what I've posted above?^ > > one thing after another, please ;) I did not yet have time to dig > deeper into that (but much of the work I did was kind of prep work). I > hope to be able to look some time next week into it. > > Rainer > > > Also, it seems I understand why rsyslog would drop messages, but for our > > use case it's better to have duplicates than drop them (we want at least > > once semantics), is it possible to configure rsyslog that way (or add > this > > functionality)? > > > > Thanks! > > > > On Tue, Mar 29, 2016 at 10:46 AM, Kane Kim <[email protected]> > wrote: > > > >> Updated config to: > >> module(load="omrelp") > >> local0.* action(type="omrelp" > >> target="10.0.0.1" > >> port="2514" > >> name="debug_relp" > >> queue.filename="relp_queue" > >> queue.maxdiskspace="1G" > >> queue.saveonshutdown="on" > >> queue.spoolDirectory="/var/spool/rsyslog" > >> queue.type="Disk" > >> action.resumeRetryCount="-1" > >> action.resumeInterval="1" > >> ) > >> > >> Still message is lost: > >> > >> 3489.658349703:imuxsock.c : Message from UNIX socket: #3 > >> 3489.658367582:imuxsock.c : main Q: qqueueAdd: entry added, size now > >> log 1, phys 1 entries > >> 3489.658372561:imuxsock.c : main Q: EnqueueMsg advised worker start > >> 3489.658374985:imuxsock.c : --------imuxsock calling select, active > >> file descriptors (max 3): 3 > >> 3489.658384201:main Q:Reg/w0 : wti 0x23c8ba0: worker awoke from idle > >> processing > >> 3489.658386792:main Q:Reg/w0 : DeleteProcessedBatch: we deleted 0 > objects > >> and enqueued 0 objects > >> 3489.658388548:main Q:Reg/w0 : doDeleteBatch: delete batch from store, > >> new sizes: log 1, phys 1 > >> 3489.658391356:main Q:Reg/w0 : processBATCH: batch of 1 elements must > be > >> processed > >> 3489.658392786:main Q:Reg/w0 : processBATCH: next msg 0: <134>Mar 29 > >> 17:44:49 logger: test > >> 3489.658395027:main Q:Reg/w0 : PRIFILT 'local0.*' > >> 3489.658397540:main Q:Reg/w0 : pmask: X X X X X X X X X X > >> X X X X X X FF X X X X X X X X X > >> 3489.658413235:main Q:Reg/w0 : PRIFILT condition result is 1 > >> 3489.658414686:main Q:Reg/w0 : ACTION 0 > [omrelp:action(type="omrelp" > >> ...)] > >> 3489.658417648:main Q:Reg/w0 : executing action 0 > >> 3489.658419520:main Q:Reg/w0 : action 'debug_relp': called, logging to > >> omrelp (susp 0/0, direct q 0) > >> 3489.658433462:main Q:Reg/w0 : strm 0x23b74c0: file -1(relp_queue) > flush, > >> buflen 410 > >> 3489.658435496:main Q:Reg/w0 : strmPhysWrite, stream 0x23b74c0, len 410 > >> 3489.658484243:main Q:Reg/w0 : file > >> '/var/spool/rsyslog/relp_queue.00000001' opened as #5 with mode 384 > >> 3489.658487347:main Q:Reg/w0 : strm 0x23b74c0: opened file > >> '/var/spool/rsyslog/relp_queue.00000001' for WRITE as 5 > >> 3489.658500498:main Q:Reg/w0 : strm 0x23b74c0: file 5 write wrote 410 > >> bytes > >> 3489.658502751:main Q:Reg/w0 : debug_relp queue: write wrote 410 octets > >> to disk, queue disk size now 410 octets, EnqOnly:0 > >> 3489.658504568:main Q:Reg/w0 : debug_relp queue: qqueueAdd: entry > added, > >> size now log 1, phys 1 entries > >> 3489.658506705:main Q:Reg/w0 : debug_relp queue:Reg: high activity - > >> starting 1 additional worker thread(s). > >> 3489.658528951:main Q:Reg/w0 : debug_relp queue:Reg: started with state > >> 0, num workers now 1 > >> 3489.658530689:main Q:Reg/w0 : debug_relp queue: EnqueueMsg advised > >> worker start > >> 3489.658532183:main Q:Reg/w0 : action 'debug_relp': set suspended state > >> to 0 > >> 3489.658533672:main Q:Reg/w0 : PRIFILT > >> '*.info;mail.none;authpriv.none;cron.none' > >> 3489.658536164:main Q:Reg/w0 : pmask: 7F 7F X 7F 7F 7F 7F 7F 7F X > >> X 7F 7F 7F 7F 7F 7F 7F 7F 7F 7F 7F 7F 7F 7F 7F > >> 3489.658552240:main Q:Reg/w0 : PRIFILT condition result is 1 > >> 3489.658553393:main Q:Reg/w0 : ACTION 1 > >> [builtin:omfile:/var/log/messages] > >> 3489.658556301:main Q:Reg/w0 : executing action 1 > >> 3489.658557878:main Q:Reg/w0 : action 'action 1': called, logging to > >> builtin:omfile (susp 0/0, direct q 1) > >> 3489.658561265:main Q:Reg/w0 : action 'action 1': is transactional - > >> executing in commit phase > >> 3489.658563696:main Q:Reg/w0 : Action 1 transitioned to state: itx > >> 3489.658564902:main Q:Reg/w0 : action 'action 1': set suspended state > to 0 > >> 3489.658566053:main Q:Reg/w0 : PRIFILT 'authpriv.*' > >> 3489.658568233:main Q:Reg/w0 : pmask: X X X X X X X X X X > >> FF X X X X X X X X X X X X X X X > >> 3489.658582888:main Q:Reg/w0 : PRIFILT condition result is 0 > >> 3489.658584058:main Q:Reg/w0 : PRIFILT 'mail.*' > >> 3489.658586243:main Q:Reg/w0 : pmask: X X FF X X X X X X X > >> X X X X X X X X X X X X X X X X > >> 3489.658600961:main Q:Reg/w0 : PRIFILT condition result is 0 > >> 3489.658602136:main Q:Reg/w0 : PRIFILT 'cron.*' > >> 3489.658604562:main Q:Reg/w0 : pmask: X X X X X X X X X FF > >> X X X X X X X X X X X X X X X X > >> 3489.658619159:main Q:Reg/w0 : PRIFILT condition result is 0 > >> 3489.658620352:main Q:Reg/w0 : PRIFILT '*.emerg' > >> 3489.658622551:main Q:Reg/w0 : pmask: 1 1 1 1 1 1 1 1 1 1 > >> 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 > >> 3489.658638435:main Q:Reg/w0 : PRIFILT condition result is 0 > >> 3489.658639529:main Q:Reg/w0 : PRIFILT 'uucp,news.crit' > >> 3489.658641711:main Q:Reg/w0 : pmask: X X X X X X X 7 7 X > >> X X X X X X X X X X X X X X X X > >> 3489.658656380:main Q:Reg/w0 : PRIFILT condition result is 0 > >> 3489.658657532:main Q:Reg/w0 : PRIFILT 'local7.*' > >> 3489.658659794:main Q:Reg/w0 : pmask: X X X X X X X X X X > >> X X X X X X X X X X X X X FF X X > >> 3489.658674346:main Q:Reg/w0 : PRIFILT condition result is 0 > >> 3489.658675686:main Q:Reg/w0 : END batch execution phase, entering to > >> commit phase [processed 1 of 1 messages] > >> 3489.658677400:main Q:Reg/w0 : actionCommitAll: action 1, state 1, nbr > to > >> commit 0 isTransactional 1 > >> 3489.658679044:main Q:Reg/w0 : doTransaction: have commitTransaction > IF, > >> using that, pWrkrInfo 0x23c8ce0 > >> 3489.658680668:main Q:Reg/w0 : entering actionCallCommitTransaction(), > >> state: itx, actionNbr 1, nMsgs 1 > >> 3489.658682704:main Q:Reg/w0 : omfile: write to stream, pData->pStrm > >> 0x7f1ef4002480, lenBuf 42, strt data Mar 29 17:44:49 314959ac8cb0 > logger: > >> test > >> > >> 3489.658685296:main Q:Reg/w0 : strm 0x7f1ef4002480: file 4(messages) > >> flush, buflen 42 > >> 3489.658686866:main Q:Reg/w0 : strmPhysWrite, stream 0x7f1ef4002480, > len > >> 42 > >> 3489.658696046:main Q:Reg/w0 : strm 0x7f1ef4002480: file 4 write wrote > 42 > >> bytes > >> 3489.658697884:main Q:Reg/w0 : Action 1 transitioned to state: rdy > >> 3489.658699301:main Q:Reg/w0 : Action 1 transitioned to state: itx > >> 3489.658700575:main Q:Reg/w0 : Action 1 transitioned to state: rdy > >> 3489.658701773:main Q:Reg/w0 : actionCommit, in retry loop, iRet 0 > >> 3489.658703176:main Q:Reg/w0 : processBATCH: batch of 1 elements has > been > >> processed > >> 3489.658704989:main Q:Reg/w0 : regular consumer finished, iret=0, > szlog 0 > >> sz phys 1 > >> 3489.658707214:main Q:Reg/w0 : DeleteProcessedBatch: we deleted 1 > objects > >> and enqueued 0 objects > >> 3489.658708626:main Q:Reg/w0 : doDeleteBatch: delete batch from store, > >> new sizes: log 0, phys 0 > >> 3489.658710186:main Q:Reg/w0 : regular consumer finished, iret=4, > szlog 0 > >> sz phys 0 > >> 3489.658711550:main Q:Reg/w0 : main Q:Reg/w0: worker IDLE, waiting for > >> work. > >> 3489.660013052:7f1efbb14700: thread created, tid 30310, name > >> 'rs:debug_relp queue:Reg' > >> 3489.660298870:debug_relp queue:Reg/w0: wti 0x23c78b0: worker starting > >> 3489.660645336:debug_relp queue:Reg/w0: DeleteProcessedBatch: we > deleted 0 > >> objects and enqueued 0 objects > >> 3489.660922752:debug_relp queue:Reg/w0: doDeleteBatch: delete batch from > >> store, new sizes: log 1, phys 1 > >> 3489.660947418:debug_relp queue:Reg/w0: file > >> '/var/spool/rsyslog/relp_queue.00000001' opened as #6 with mode 384 > >> 3489.660959920:debug_relp queue:Reg/w0: strm 0x23b7760: opened file > >> '/var/spool/rsyslog/relp_queue.00000001' for READ as 6 > >> 3489.660967370:debug_relp queue:Reg/w0: strm 0x23b7760: file 6 read 410 > >> bytes > >> 3489.661768120:debug_relp queue:Reg/w0: action 'debug_relp': is > >> transactional - executing in commit phase > >> 3489.661782408:debug_relp queue:Reg/w0: wti 0x23c78b0: we need to > create a > >> new action worker instance for action 0 > >> 3489.661789583:debug_relp queue:Reg/w0: relp engine created new client > >> 0x7f1ef00027e0 > >> 3489.661794073:debug_relp queue:Reg/w0: wti 0x23c78b0: created action > >> worker instance 1 for action 0 > >> 3489.661798129:debug_relp queue:Reg/w0: omrelp: beginTransaction > >> ^C3497.710058579:main thread : DoDie called. > >> 3497.710272055:main thread : exiting on signal 2 > >> 3497.710576430:main thread : Terminating input threads... > >> 3497.710765753:main thread : request term via SIGTTIN for input > thread > >> 'imuxsock' 0xfcb16700 > >> 3497.711033925:imuxsock.c : thrdStarter: usrThrdMain imuxsock - > >> 0x7f1efcb16700 returned with iRet 0, exiting now. > >> 3497.711447372:main thread : non-cancel input thread termination > >> succeeded for thread imuxsock 0xfcb16700 > >> 3497.713028584:imuxsock.c : destructor for debug call stack > >> 0x7f1eec0008c0 called > >> 3497.713390963:main thread : imuxsock: unlinking unix socket file[0] > >> /dev/log > >> 3497.713734513:main thread : main Q: qqueueAdd: entry added, size now > >> log 1, phys 1 entries > >> 3497.713906635:main thread : main Q: EnqueueMsg advised worker start > >> 3497.714257550:main Q:Reg/w0 : wti 0x23c8ba0: worker awoke from idle > >> processing > >> 3497.714544345:main Q:Reg/w0 : DeleteProcessedBatch: we deleted 0 > objects > >> and enqueued 0 objects > >> 3497.715372923:main Q:Reg/w0 : doDeleteBatch: delete batch from store, > >> new sizes: log 1, phys 1 > >> 3497.715611163:main Q:Reg/w0 : processBATCH: batch of 1 elements must > be > >> processed > >> 3497.715762447:main Q:Reg/w0 : processBATCH: next msg 0: [origin > >> software="rsyslogd" swVersion="8.18.0.master" x-pid="30306" x-info=" > >> http://www.rsyslog.com"] exiting on signal 2. > >> 3497.715965911:main Q:Reg/w0 : PRIFILT 'local0.*' > >> 3497.715976154:main Q:Reg/w0 : pmask: X X X X X X X X X X > >> X X X X X X FF X X X X X X X X X > >> 3497.716332698:main Q:Reg/w0 : PRIFILT condition result is 0 > >> 3497.716337713:main Q:Reg/w0 : PRIFILT > >> '*.info;mail.none;authpriv.none;cron.none' > >> 3497.716347729:main Q:Reg/w0 : pmask: 7F 7F X 7F 7F 7F 7F 7F 7F X > >> X 7F 7F 7F 7F 7F 7F 7F 7F 7F 7F 7F 7F 7F 7F 7F > >> 3497.716424684:main Q:Reg/w0 : PRIFILT condition result is 1 > >> 3497.716429241:main Q:Reg/w0 : ACTION 1 > >> [builtin:omfile:/var/log/messages] > >> 3497.716439928:main Q:Reg/w0 : executing action 1 > >> 3497.716445132:main Q:Reg/w0 : action 'action 1': called, logging to > >> builtin:omfile (susp 0/0, direct q 1) > >> 3497.716452142:main Q:Reg/w0 : action 'action 1': is transactional - > >> executing in commit phase > >> 3497.716457817:main Q:Reg/w0 : Action 1 transitioned to state: itx > >> 3497.716462371:main Q:Reg/w0 : action 'action 1': set suspended state > to 0 > >> 3497.716466771:main Q:Reg/w0 : PRIFILT 'authpriv.*' > >> 3497.716476330:main Q:Reg/w0 : pmask: X X X X X X X X X X > >> FF X X X X X X X X X X X X X X X > >> 3497.716796250:main Q:Reg/w0 : PRIFILT condition result is 0 > >> 3497.716802372:main Q:Reg/w0 : PRIFILT 'mail.*' > >> 3497.716811926:main Q:Reg/w0 : pmask: X X FF X X X X X X X > >> X X X X X X X X X X X X X X X X > >> 3497.717436983:main Q:Reg/w0 : PRIFILT condition result is 0 > >> 3497.717444114:main Q:Reg/w0 : PRIFILT 'cron.*' > >> 3497.717454023:main Q:Reg/w0 : pmask: X X X X X X X X X FF > >> X X X X X X X X X X X X X X X X > >> 3497.717823841:main Q:Reg/w0 : PRIFILT condition result is 0 > >> 3497.717829094:main Q:Reg/w0 : PRIFILT '*.emerg' > >> 3497.717838767:main Q:Reg/w0 : pmask: 1 1 1 1 1 1 1 1 1 1 > >> 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 > >> 3497.717916499:main Q:Reg/w0 : PRIFILT condition result is 0 > >> 3497.717920817:main Q:Reg/w0 : PRIFILT 'uucp,news.crit' > >> 3497.717930304:main Q:Reg/w0 : pmask: X X X X X X X 7 7 X > >> X X X X X X X X X X X X X X X X > >> 3497.718043828:main Q:Reg/w0 : PRIFILT condition result is 0 > >> 3497.718044097:main Q:Reg/w0 : PRIFILT 'local7.*' > >> 3497.718055458:main Q:Reg/w0 : pmask: X X X X X X X X X X > >> X X X X X X X X X X X X X FF X X > >> 3497.718838257:main Q:Reg/w0 : PRIFILT condition result is 0 > >> 3497.718842803:main Q:Reg/w0 : END batch execution phase, entering to > >> commit phase [processed 1 of 1 messages] > >> 3497.718847686:main Q:Reg/w0 : actionCommitAll: action 1, state 1, nbr > to > >> commit 0 isTransactional 1 > >> 3497.718852750:main Q:Reg/w0 : doTransaction: have commitTransaction > IF, > >> using that, pWrkrInfo 0x23c8ce0 > >> 3497.718857172:main Q:Reg/w0 : entering actionCallCommitTransaction(), > >> state: itx, actionNbr 1, nMsgs 1 > >> 3497.718862516:main Q:Reg/w0 : omfile: write to stream, pData->pStrm > >> 0x7f1ef4002480, lenBuf 161, strt data Mar 29 17:44:57 314959ac8cb0 > >> rsyslogd: [origin software="rsyslogd" swVersion="8.18.0.master" > >> x-pid="30306" x-info="http://www.rs > >> 3497.718868427:main Q:Reg/w0 : strm 0x7f1ef4002480: file 4(messages) > >> flush, buflen 161 > >> 3497.718873173:main Q:Reg/w0 : strmPhysWrite, stream 0x7f1ef4002480, > len > >> 161 > >> 3497.718890732:main Q:Reg/w0 : strm 0x7f1ef4002480: file 4 write wrote > >> 161 bytes > >> 3497.718896519:main Q:Reg/w0 : Action 1 transitioned to state: rdy > >> 3497.718901151:main Q:Reg/w0 : Action 1 transitioned to state: itx > >> 3497.718905316:main Q:Reg/w0 : Action 1 transitioned to state: rdy > >> 3497.718909316:main Q:Reg/w0 : actionCommit, in retry loop, iRet 0 > >> 3497.718913541:main Q:Reg/w0 : processBATCH: batch of 1 elements has > been > >> processed > >> 3497.718918158:main Q:Reg/w0 : regular consumer finished, iret=0, > szlog 0 > >> sz phys 1 > >> 3497.718923739:main Q:Reg/w0 : DeleteProcessedBatch: we deleted 1 > objects > >> and enqueued 0 objects > >> 3497.718928090:main Q:Reg/w0 : doDeleteBatch: delete batch from store, > >> new sizes: log 0, phys 0 > >> 3497.718932606:main Q:Reg/w0 : regular consumer finished, iret=4, > szlog 0 > >> sz phys 0 > >> 3497.718936888:main Q:Reg/w0 : main Q:Reg/w0: worker IDLE, waiting for > >> work. > >> 3497.718942403:main thread : Terminating main queue... > >> 3497.718946280:main thread : main Q: initiating worker thread > shutdown > >> sequence > >> 3497.718950170:main thread : main Q: trying shutdown of regular > workers > >> 3497.718957067:main thread : sent SIGTTIN to worker thread 0xfc315700 > >> 3497.718961130:main thread : main Q:Reg: waiting 1500ms on worker > >> thread termination, 1 still running > >> 3497.718968288:main Q:Reg/w0 : wti 0x23c8ba0: worker awoke from idle > >> processing > >> 3497.718972108:main Q:Reg/w0 : DeleteProcessedBatch: we deleted 0 > objects > >> and enqueued 0 objects > >> 3497.718975498:main Q:Reg/w0 : doDeleteBatch: delete batch from store, > >> new sizes: log 0, phys 0 > >> 3497.718979083:main Q:Reg/w0 : regular consumer finished, iret=4, > szlog 0 > >> sz phys 0 > >> 3497.718982620:main Q:Reg/w0 : wti 0x23c8ba0: terminating worker > >> terminateRet=5, bInactivityTOOccured=0 > >> 3497.718986378:main Q:Reg/w0 : DDDD: wti 0x23c8ba0: worker cleanup > action > >> instances > >> 3497.718990027:main Q:Reg/w0 : wti 0x23c8ba0, action 0, ptr (nil) > >> 3497.718993327:main Q:Reg/w0 : wti 0x23c8ba0, action 1, ptr > 0x7f1ef40022a0 > >> 3497.718997548:main Q:Reg/w0 : wti 0x23c8ba0, action 2, ptr (nil) > >> 3497.719000789:main Q:Reg/w0 : wti 0x23c8ba0, action 3, ptr (nil) > >> 3497.719003996:main Q:Reg/w0 : wti 0x23c8ba0, action 4, ptr (nil) > >> 3497.719007201:main Q:Reg/w0 : wti 0x23c8ba0, action 5, ptr (nil) > >> 3497.719010409:main Q:Reg/w0 : wti 0x23c8ba0, action 6, ptr (nil) > >> 3497.719013604:main Q:Reg/w0 : wti 0x23c8ba0, action 7, ptr (nil) > >> 3497.719016916:main Q:Reg/w0 : wti 0x23c8ba0: worker exiting > >> 3497.719020757:main Q:Reg/w0 : main Q:Reg: Worker thread 23c8ba0, > >> terminated, num workers now 0 > >> 3497.719090631:main thread : main Q: regular queue workers shut down. > >> 3497.719097597:main thread : main Q: checking to see if we need to > >> cancel any worker threads of the primary queue > >> 3497.719101335:main thread : main Q: worker threads terminated, > >> remaining queue size log 0, phys 0. > >> 3497.719111115:main thread : main Q: queue (type 0) will lose 0 > >> messages, destroying... > >> 3497.719501847:main Q:Reg/w0 : destructor for debug call stack > >> 0x7f1ef40008c0 called > >> 3497.719547524:main thread : Terminating outputs... > >> 3497.719553777:main thread : destructing ruleset 0x23ab150, name > >> 0x23ab190 > >> 3497.719558276:main thread : debug_relp queue: initiating worker > thread > >> shutdown sequence > >> 3497.719561940:main thread : debug_relp queue: trying shutdown of > >> regular workers > >> 3497.719568068:main thread : sent SIGTTIN to worker thread 0xfbb14700 > >> 3497.719587478:main thread : debug_relp queue:Reg: waiting 0ms on > >> worker thread termination, 1 still running > >> 3497.719593945:debug_relp queue:Reg/w0: end relpSessConnect, iRet 10014 > >> 3497.719599684:debug_relp queue:Reg/w0: Action 0 transitioned to state: > >> rtry > >> 3497.719603211:debug_relp queue:Reg/w0: doTransaction: action 0, > >> currIParam 1 > >> 3497.719607186:debug_relp queue:Reg/w0: actionDoRetry: debug_relp enter > >> loop, iRetries=0 > >> 3497.719677407:main thread : debug_relp queue:Reg: timeout waiting on > >> worker thread termination > >> 3497.719677554:main thread : sent SIGTTIN to worker thread 0xfbb14700 > >> 3497.719677725:main thread : debug_relp queue: regular shutdown timed > >> out on primary queue (this is OK) > >> 3497.719677897:main thread : debug_relp queue: trying to shutdown > >> workers within Action Timeoutsetting EnqOnly mode > >> 3497.719678191:main thread : debug_relp queue: trying immediate > >> shutdown of regular workers (if any) > >> 3497.719678362:main thread : sent SIGTTIN to worker thread 0xfbb14700 > >> 3497.719678558:main thread : debug_relp queue:Reg: waiting 1000ms on > >> worker thread termination, 1 still running > >> 3497.719678754:debug_relp queue:Reg/w0: end relpSessConnect, iRet 10014 > >> 3497.719678877:debug_relp queue:Reg/w0: actionDoRetry: debug_relp > >> action->tryResume returned -2007 > >> 3497.719678999:debug_relp queue:Reg/w0: actionDoRetry: debug_relp check > >> for max retries, iResumeRetryCount -1, iRetries 0 > >> 3498.720321005:debug_relp queue:Reg/w0: actionTryResume: action > 0x23bebf0 > >> state: rtry, next retry (if applicable): 0 [now 1459273498] > >> 3498.720769277:debug_relp queue:Reg/w0: actionCommit, in retry loop, > iRet > >> -2007 > >> 3498.721034552:debug_relp queue:Reg/w0: regular consumer finished, > >> iret=-2007, szlog 0 sz phys 1 > >> 3498.721240322:debug_relp queue:Reg/w0: DeleteProcessedBatch: we > deleted 1 > >> objects and enqueued 0 objects > >> 3498.721396664:debug_relp queue:Reg/w0: doDeleteBatch: delete batch from > >> store, new sizes: log 0, phys 0 > >> 3498.721831840:debug_relp queue:Reg/w0: wti 0x23c78b0: terminating > worker > >> because of TERMINATE_NOW mode, del iRet 0 > >> 3498.721991265:debug_relp queue:Reg/w0: DDDD: wti 0x23c78b0: worker > >> cleanup action instances > >> 3498.722274489:debug_relp queue:Reg/w0: wti 0x23c78b0, action 0, ptr > >> 0x7f1ef00020d0 > >> 3498.722431811:debug_relp queue:Reg/w0: relp engine destructing client > >> 0x7f1ef00027e0 > >> 3498.723389457:debug_relp queue:Reg/w0: wti 0x23c78b0, action 1, ptr > (nil) > >> 3498.723559462:debug_relp queue:Reg/w0: wti 0x23c78b0, action 2, ptr > (nil) > >> 3498.723794716:debug_relp queue:Reg/w0: wti 0x23c78b0, action 3, ptr > (nil) > >> 3498.723972736:debug_relp queue:Reg/w0: wti 0x23c78b0, action 4, ptr > (nil) > >> 3498.724207978:debug_relp queue:Reg/w0: wti 0x23c78b0, action 5, ptr > (nil) > >> 3498.724215660:debug_relp queue:Reg/w0: wti 0x23c78b0, action 6, ptr > (nil) > >> 3498.724219766:debug_relp queue:Reg/w0: wti 0x23c78b0, action 7, ptr > (nil) > >> 3498.724223775:debug_relp queue:Reg/w0: wti 0x23c78b0: worker exiting > >> 3498.724228430:debug_relp queue:Reg/w0: debug_relp queue:Reg: Worker > >> thread 23c78b0, terminated, num workers now 0 > >> 3498.724243673:debug_relp queue:Reg/w0: destructor for debug call stack > >> 0x7f1ef00008c0 called > >> 3498.724371931:main thread : debug_relp queue: checking to see if we > >> need to cancel any worker threads of the primary queue > >> 3498.724379712:main thread : debug_relp queue: worker threads > >> terminated, remaining queue size log 0, phys 0. > >> 3498.724386288:main thread : debug_relp queue: persisting queue to > >> disk, 0 entries... > >> 3498.724391611:main thread : strm 0x23b74c0: file 5(relp_queue) > closing > >> 3498.724396110:main thread : strm 0x23b74c0: file 5(relp_queue) > flush, > >> buflen 0 (no need to flush) > >> 3498.724411574:main thread : strm 0x23b7760: file 6(relp_queue) > closing > >> 3498.724418797:main thread : strm 0x23b7a00: file -1(relp_queue) > closing > >> 3498.724423956:main thread : strmCloseFile: deleting > >> '/var/spool/rsyslog/relp_queue.00000001' > >> 3498.724490018:main thread : strm 0x7f1ef4002480: file 4(messages) > >> closing > >> 3498.724607874:main thread : strm 0x7f1ef4002480: file 4(messages) > >> flush, buflen 0 (no need to flush) > >> 3498.724731690:main thread : all primary multi-thread sources have > been > >> terminated - now doing aux cleanup... > >> 3498.724737248:main thread : destructing current config... > >> 3498.724741760:main thread : calling freeCnf(0x23a91e0) for module > >> 'builtin:omfile' > >> 3498.724745773:main thread : calling freeCnf(0x23a93a0) for module > >> 'builtin:ompipe' > >> 3498.724749977:main thread : calling freeCnf(0x23aa3a0) for module > >> 'builtin:omfwd' > >> 3498.724754588:main thread : calling freeCnf(0x23b9b00) for module > >> 'imuxsock' > >> 3498.724758956:main thread : calling freeCnf(0x23bac70) for module > >> 'imklog' > >> 3498.724807014:main thread : destructing parser 'rsyslog.rfc5424' > >> 3498.724871141:main thread : destructing parser 'rsyslog.rfc3164' > >> 3498.724876440:main thread : pmrfc3164: free parser instance > 0x23aa8b0 > >> 3498.724887558:main thread : file rsyslogd.c released module 'lmnet', > >> reference count now 2 > >> 3498.724892004:main thread : module lmnet NOT unloaded because it > still > >> has a refcount of 2 > >> 3498.724895745:main thread : Unloading module builtin:omfile > >> 3498.724900191:main thread : module lmnet NOT unloaded because it > still > >> has a refcount of 2 > >> 3498.724904194:main thread : Unloading module builtin:ompipe > >> 3498.724908035:main thread : module lmnet NOT unloaded because it > still > >> has a refcount of 2 > >> 3498.724911707:main thread : Unloading module builtin-shell > >> 3498.725044125:main thread : module lmnet NOT unloaded because it > still > >> has a refcount of 2 > >> 3498.725050401:main thread : Unloading module builtin:omdiscard > >> 3498.725054843:main thread : module lmnet NOT unloaded because it > still > >> has a refcount of 2 > >> 3498.725058772:main thread : Unloading module builtin:omfwd > >> 3498.725064464:main thread : file omfwd.c released module 'lmnet', > >> reference count now 1 > >> 3498.725068747:main thread : module lmnet NOT unloaded because it > still > >> has a refcount of 1 > >> 3498.725072460:main thread : Unloading module builtin:omusrmsg > >> 3498.725076324:main thread : module lmnet NOT unloaded because it > still > >> has a refcount of 1 > >> 3498.725080023:main thread : Unloading module builtin:pmrfc5424 > >> 3498.725084039:main thread : module lmnet NOT unloaded because it > still > >> has a refcount of 1 > >> 3498.725087646:main thread : Unloading module builtin:pmrfc3164 > >> 3498.725091651:main thread : module lmnet NOT unloaded because it > still > >> has a refcount of 1 > >> 3498.725095255:main thread : Unloading module builtin:smfile > >> 3498.725099010:main thread : module lmnet NOT unloaded because it > still > >> has a refcount of 1 > >> 3498.725102601:main thread : Unloading module builtin:smtradfile > >> 3498.725106419:main thread : module lmnet NOT unloaded because it > still > >> has a refcount of 1 > >> 3498.725110003:main thread : Unloading module builtin:smfwd > >> 3498.725113689:main thread : module lmnet NOT unloaded because it > still > >> has a refcount of 1 > >> 3498.725117357:main thread : Unloading module builtin:smtradfwd > >> 3498.725121132:main thread : module lmnet NOT unloaded because it > still > >> has a refcount of 1 > >> 3498.725124782:main thread : Unloading module imuxsock > >> 3498.725157459:main thread : module lmnet NOT unloaded because it > still > >> has a refcount of 1 > >> 3498.725162797:main thread : Unloading module imklog > >> 3498.725179208:main thread : module lmnet NOT unloaded because it > still > >> has a refcount of 1 > >> 3498.726112994:main thread : Unloading module omrelp > >> 3498.726184405:main thread : module lmnet NOT unloaded because it > still > >> has a refcount of 1 > >> 3498.726189821:main thread : module lmregexp NOT unloaded because it > >> still has a refcount of 1 > >> 3498.726195161:main thread : file conf.c released module 'lmnet', > >> reference count now 0 > >> 3498.726198620:main thread : module 'lmnet' has zero reference count, > >> unloading... > >> 3498.726201936:main thread : Unloading module lmnet > >> 3498.726218655:main thread : rsyslog runtime de-initialized, current > >> users 0 > >> 3498.726222660:main thread : Clean shutdown completed, bye > >> > >> > >> On Mon, Mar 28, 2016 at 4:41 PM, Kane Kim <[email protected]> > wrote: > >> > >>> Hello Reiner, > >>> > >>> I'm seeing the same behavior with omrelp module. I've configured omrelp > >>> to non-routable ip address: > >>> module(load="omrelp") > >>> local0.* action(type="omrelp" > >>> target="10.0.0.1" > >>> port="2514" > >>> name="debug_relp" > >>> queue.filename="relp_queue" > >>> queue.maxdiskspace="1G" > >>> queue.saveonshutdown="on" > >>> queue.spoolDirectory="/var/spool/rsyslog" > >>> queue.type="Disk" > >>> ) > >>> Then I try to log a line: > >>> [root@314959ac8cb0 prism]# logger -p local0.info test > >>> [root@314959ac8cb0 prism]# ls /var/spool/rsyslog/ > >>> relp_queue.00000001 > >>> # I shutdown rsyslog at this point > >>> [root@314959ac8cb0 prism]# ls /var/spool/rsyslog/ > >>> # after shutdown queue is deleted and message is lost > >>> [root@314959ac8cb0 prism]# > >>> > >>> Here is rsyslog log, so omrelp starts transaction and then I shutdown > >>> rsyslog, it seems at some point queue is deleted: > >>> > >>> 8184.798028612:debug_relp queue:Reg/w0: omrelp: beginTransaction > >>> ^C8194.245122305:main thread : DoDie called. > >>> 8194.245301525:main thread : exiting on signal 2 > >>> 8194.245532709:main thread : Terminating input threads... > >>> 8194.245873683:main thread : request term via SIGTTIN for input > thread > >>> 'imuxsock' 0xcb767700 > >>> 8194.246079748:imuxsock.c : thrdStarter: usrThrdMain imuxsock - > >>> 0x7f9bcb767700 returned with iRet 0, exiting now. > >>> 8194.247556671:main thread : non-cancel input thread termination > >>> succeeded for thread imuxsock 0xcb767700 > >>> 8194.249357547:imuxsock.c : destructor for debug call stack > >>> 0x7f9bbc0008c0 called > >>> 8194.249784271:main thread : imuxsock: unlinking unix socket file[0] > >>> /dev/log > >>> 8194.250043368:main thread : main Q: qqueueAdd: entry added, size > now > >>> log 1, phys 1 entries > >>> 8194.250321193:main thread : main Q: EnqueueMsg advised worker start > >>> 8194.250493505:main Q:Reg/w0 : wti 0x1c13bb0: worker awoke from idle > >>> processing > >>> 8194.250735988:main Q:Reg/w0 : DeleteProcessedBatch: we deleted 0 > >>> objects and enqueued 0 objects > >>> 8194.250959294:main Q:Reg/w0 : doDeleteBatch: delete batch from store, > >>> new sizes: log 1, phys 1 > >>> 8194.251913535:main Q:Reg/w0 : processBATCH: batch of 1 elements must > be > >>> processed > >>> 8194.252193683:main Q:Reg/w0 : processBATCH: next msg 0: [origin > >>> software="rsyslogd" swVersion="8.18.0.master" x-pid="30298" x-info=" > >>> http://www.rsyslog.com"] exiting on signal 2. > >>> 8194.252377044:main Q:Reg/w0 : PRIFILT 'local0.*' > >>> 8194.252669683:main Q:Reg/w0 : pmask: X X X X X X X X X > X > >>> X X X X X X FF X X X X X X X X X > >>> 8194.252898063:main Q:Reg/w0 : PRIFILT condition result is 0 > >>> 8194.252902083:main Q:Reg/w0 : PRIFILT > >>> '*.info;mail.none;authpriv.none;cron.none' > >>> 8194.252908847:main Q:Reg/w0 : pmask: 7F 7F X 7F 7F 7F 7F 7F 7F > X > >>> X 7F 7F 7F 7F 7F 7F 7F 7F 7F 7F 7F 7F 7F 7F 7F > >>> 8194.252956209:main Q:Reg/w0 : PRIFILT condition result is 1 > >>> 8194.252959849:main Q:Reg/w0 : ACTION 1 > >>> [builtin:omfile:/var/log/messages] > >>> 8194.252967510:main Q:Reg/w0 : executing action 1 > >>> 8194.252971541:main Q:Reg/w0 : action 'action 1': called, logging to > >>> builtin:omfile (susp 0/0, direct q 1) > >>> 8194.252977583:main Q:Reg/w0 : action 'action 1': is transactional - > >>> executing in commit phase > >>> 8194.252982638:main Q:Reg/w0 : Action 1 transitioned to state: itx > >>> 8194.252986300:main Q:Reg/w0 : action 'action 1': set suspended state > to > >>> 0 > >>> 8194.252989729:main Q:Reg/w0 : PRIFILT 'authpriv.*' > >>> 8194.252996951:main Q:Reg/w0 : pmask: X X X X X X X X X > X > >>> FF X X X X X X X X X X X X X X X > >>> 8194.253051858:main Q:Reg/w0 : PRIFILT condition result is 0 > >>> 8194.253056228:main Q:Reg/w0 : PRIFILT 'mail.*' > >>> 8194.253065299:main Q:Reg/w0 : pmask: X X FF X X X X X X > X > >>> X X X X X X X X X X X X X X X X > >>> 8194.253407472:main Q:Reg/w0 : PRIFILT condition result is 0 > >>> 8194.253412679:main Q:Reg/w0 : PRIFILT 'cron.*' > >>> 8194.253422055:main Q:Reg/w0 : pmask: X X X X X X X X X > FF > >>> X X X X X X X X X X X X X X X X > >>> 8194.253493551:main Q:Reg/w0 : PRIFILT condition result is 0 > >>> 8194.253498038:main Q:Reg/w0 : PRIFILT '*.emerg' > >>> 8194.253507065:main Q:Reg/w0 : pmask: 1 1 1 1 1 1 1 1 1 > 1 > >>> 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 > >>> 8194.253580307:main Q:Reg/w0 : PRIFILT condition result is 0 > >>> 8194.253584400:main Q:Reg/w0 : PRIFILT 'uucp,news.crit' > >>> 8194.253593442:main Q:Reg/w0 : pmask: X X X X X X X 7 7 > X > >>> X X X X X X X X X X X X X X X X > >>> 8194.253664984:main Q:Reg/w0 : PRIFILT condition result is 0 > >>> 8194.253669184:main Q:Reg/w0 : PRIFILT 'local7.*' > >>> 8194.253678130:main Q:Reg/w0 : pmask: X X X X X X X X X > X > >>> X X X X X X X X X X X X X FF X X > >>> 8194.254445021:main Q:Reg/w0 : PRIFILT condition result is 0 > >>> 8194.254450651:main Q:Reg/w0 : END batch execution phase, entering to > >>> commit phase [processed 1 of 1 messages] > >>> 8194.254456257:main Q:Reg/w0 : actionCommitAll: action 1, state 1, nbr > >>> to commit 0 isTransactional 1 > >>> 8194.254461646:main Q:Reg/w0 : doTransaction: have commitTransaction > IF, > >>> using that, pWrkrInfo 0x1c13cf0 > >>> 8194.254466238:main Q:Reg/w0 : entering actionCallCommitTransaction(), > >>> state: itx, actionNbr 1, nMsgs 1 > >>> 8194.254471876:main Q:Reg/w0 : omfile: write to stream, pData->pStrm > >>> 0x7f9bc4002480, lenBuf 161, strt data Mar 28 23:36:34 314959ac8cb0 > >>> rsyslogd: [origin software="rsyslogd" swVersion="8.18.0.master" > >>> x-pid="30298" x-info="http://www.rs > >>> 8194.254478237:main Q:Reg/w0 : strm 0x7f9bc4002480: file 4(messages) > >>> flush, buflen 161 > >>> 8194.254483210:main Q:Reg/w0 : strmPhysWrite, stream 0x7f9bc4002480, > len > >>> 161 > >>> 8194.254500329:main Q:Reg/w0 : strm 0x7f9bc4002480: file 4 write wrote > >>> 161 bytes > >>> 8194.254506254:main Q:Reg/w0 : Action 1 transitioned to state: rdy > >>> 8194.254511506:main Q:Reg/w0 : Action 1 transitioned to state: itx > >>> 8194.254515961:main Q:Reg/w0 : Action 1 transitioned to state: rdy > >>> 8194.254520243:main Q:Reg/w0 : actionCommit, in retry loop, iRet 0 > >>> 8194.254524679:main Q:Reg/w0 : processBATCH: batch of 1 elements has > >>> been processed > >>> 8194.254529731:main Q:Reg/w0 : regular consumer finished, iret=0, > szlog > >>> 0 sz phys 1 > >>> 8194.254536104:main Q:Reg/w0 : DeleteProcessedBatch: we deleted 1 > >>> objects and enqueued 0 objects > >>> 8194.254540861:main Q:Reg/w0 : doDeleteBatch: delete batch from store, > >>> new sizes: log 0, phys 0 > >>> 8194.254545792:main Q:Reg/w0 : regular consumer finished, iret=4, > szlog > >>> 0 sz phys 0 > >>> 8194.254550314:main Q:Reg/w0 : main Q:Reg/w0: worker IDLE, waiting for > >>> work. > >>> 8194.254556418:main thread : Terminating main queue... > >>> 8194.254560776:main thread : main Q: initiating worker thread > shutdown > >>> sequence > >>> 8194.254564653:main thread : main Q: trying shutdown of regular > workers > >>> 8194.254572961:main thread : sent SIGTTIN to worker thread > 0xcaf66700 > >>> 8194.254577260:main thread : main Q:Reg: waiting 1499ms on worker > >>> thread termination, 1 still running > >>> 8194.254585507:main Q:Reg/w0 : wti 0x1c13bb0: worker awoke from idle > >>> processing > >>> 8194.254589465:main Q:Reg/w0 : DeleteProcessedBatch: we deleted 0 > >>> objects and enqueued 0 objects > >>> 8194.254593070:main Q:Reg/w0 : doDeleteBatch: delete batch from store, > >>> new sizes: log 0, phys 0 > >>> 8194.254596813:main Q:Reg/w0 : regular consumer finished, iret=4, > szlog > >>> 0 sz phys 0 > >>> 8194.254600412:main Q:Reg/w0 : wti 0x1c13bb0: terminating worker > >>> terminateRet=5, bInactivityTOOccured=0 > >>> 8194.254604469:main Q:Reg/w0 : DDDD: wti 0x1c13bb0: worker cleanup > >>> action instances > >>> 8194.254608268:main Q:Reg/w0 : wti 0x1c13bb0, action 0, ptr (nil) > >>> 8194.254611752:main Q:Reg/w0 : wti 0x1c13bb0, action 1, ptr > >>> 0x7f9bc40022a0 > >>> 8194.254616114:main Q:Reg/w0 : wti 0x1c13bb0, action 2, ptr (nil) > >>> 8194.254619450:main Q:Reg/w0 : wti 0x1c13bb0, action 3, ptr (nil) > >>> 8194.254622767:main Q:Reg/w0 : wti 0x1c13bb0, action 4, ptr (nil) > >>> 8194.254626075:main Q:Reg/w0 : wti 0x1c13bb0, action 5, ptr (nil) > >>> 8194.254629392:main Q:Reg/w0 : wti 0x1c13bb0, action 6, ptr (nil) > >>> 8194.254632707:main Q:Reg/w0 : wti 0x1c13bb0, action 7, ptr (nil) > >>> 8194.254636124:main Q:Reg/w0 : wti 0x1c13bb0: worker exiting > >>> 8194.254639920:main Q:Reg/w0 : main Q:Reg: Worker thread 1c13bb0, > >>> terminated, num workers now 0 > >>> 8194.254656279:main thread : main Q: regular queue workers shut > down. > >>> 8194.254656402:main thread : main Q: checking to see if we need to > >>> cancel any worker threads of the primary queue > >>> 8194.254656524:main thread : main Q: worker threads terminated, > >>> remaining queue size log 0, phys 0. > >>> 8194.254656647:main thread : main Q: queue (type 0) will lose 0 > >>> messages, destroying... > >>> 8194.255021761:main Q:Reg/w0 : destructor for debug call stack > >>> 0x7f9bc40008c0 called > >>> 8194.255069521:main thread : Terminating outputs... > >>> 8194.255084818:main thread : destructing ruleset 0x1bf6150, name > >>> 0x1bf6190 > >>> 8194.255089525:main thread : debug_relp queue: initiating worker > >>> thread shutdown sequence > >>> 8194.255093230:main thread : debug_relp queue: trying shutdown of > >>> regular workers > >>> 8194.255099210:main thread : sent SIGTTIN to worker thread > 0xca765700 > >>> 8194.255119598:main thread : debug_relp queue:Reg: waiting 0ms on > >>> worker thread termination, 1 still running > >>> 8194.255126357:debug_relp queue:Reg/w0: end relpSessConnect, iRet 10014 > >>> 8194.255132022:debug_relp queue:Reg/w0: Action 0 transitioned to state: > >>> rtry > >>> 8194.255135551:debug_relp queue:Reg/w0: doTransaction: action 0, > >>> currIParam 1 > >>> 8194.255139603:debug_relp queue:Reg/w0: actionDoRetry: debug_relp enter > >>> loop, iRetries=0 > >>> 8194.255210939:main thread : debug_relp queue:Reg: timeout waiting > on > >>> worker thread termination > >>> 8194.255211086:main thread : sent SIGTTIN to worker thread > 0xca765700 > >>> 8194.255211257:main thread : debug_relp queue: regular shutdown > timed > >>> out on primary queue (this is OK) > >>> 8194.255211429:main thread : debug_relp queue: trying to shutdown > >>> workers within Action Timeoutsetting EnqOnly mode > >>> 8194.255215492:main thread : debug_relp queue: trying immediate > >>> shutdown of regular workers (if any) > >>> 8194.255221059:main thread : sent SIGTTIN to worker thread > 0xca765700 > >>> 8194.255226792:main thread : debug_relp queue:Reg: waiting 1000ms on > >>> worker thread termination, 1 still running > >>> 8194.255232713:debug_relp queue:Reg/w0: end relpSessConnect, iRet 10014 > >>> 8194.255237080:debug_relp queue:Reg/w0: actionDoRetry: debug_relp > >>> action->tryResume returned -2007 > >>> 8194.255240684:debug_relp queue:Reg/w0: actionDoRetry: debug_relp check > >>> for max retries, iResumeRetryCount 0, iRetries 0 > >>> 8194.255244459:debug_relp queue:Reg/w0: Action 0 transitioned to state: > >>> susp > >>> 8194.255257975:debug_relp queue:Reg/w0: Called LogMsg, msg: action > >>> 'debug_relp' suspended, next retry is Mon Mar 28 23:37:04 2016 > >>> 8194.255266857:debug_relp queue:Reg/w0: submitMsg2() could not submit > >>> message - queue does (no longer?) exist - ignored > >>> 8194.255271065:debug_relp queue:Reg/w0: action 'debug_relp' suspended, > >>> earliest retry=1459208224 (now 1459208194), iNbrResRtry 0, duration 30 > >>> 8194.255275244:debug_relp queue:Reg/w0: actionTryResume: action > 0x1c09af0 > >>> state: susp, next retry (if applicable): 1459208224 [now 1459208194] > >>> 8194.255278825:debug_relp queue:Reg/w0: actionCommit, in retry loop, > iRet > >>> -2123 > >>> 8194.255282409:debug_relp queue:Reg/w0: regular consumer finished, > >>> iret=-2123, szlog 0 sz phys 1 > >>> 8194.255287286:debug_relp queue:Reg/w0: DeleteProcessedBatch: we > deleted > >>> 1 objects and enqueued 0 objects > >>> 8194.255290952:debug_relp queue:Reg/w0: doDeleteBatch: delete batch > from > >>> store, new sizes: log 0, phys 0 > >>> 8194.255295204:debug_relp queue:Reg/w0: wti 0x1c12880: terminating > worker > >>> because of TERMINATE_NOW mode, del iRet 0 > >>> 8194.255298822:debug_relp queue:Reg/w0: DDDD: wti 0x1c12880: worker > >>> cleanup action instances > >>> 8194.255302306:debug_relp queue:Reg/w0: wti 0x1c12880, action 0, ptr > >>> 0x7f9bc00020d0 > >>> 8194.255305929:debug_relp queue:Reg/w0: relp engine destructing client > >>> 0x7f9bc00027e0 > >>> 8194.255309843:debug_relp queue:Reg/w0: wti 0x1c12880, action 1, ptr > (nil) > >>> 8194.255313226:debug_relp queue:Reg/w0: wti 0x1c12880, action 2, ptr > (nil) > >>> 8194.255316479:debug_relp queue:Reg/w0: wti 0x1c12880, action 3, ptr > (nil) > >>> 8194.255319704:debug_relp queue:Reg/w0: wti 0x1c12880, action 4, ptr > (nil) > >>> 8194.255322934:debug_relp queue:Reg/w0: wti 0x1c12880, action 5, ptr > (nil) > >>> 8194.255326175:debug_relp queue:Reg/w0: wti 0x1c12880, action 6, ptr > (nil) > >>> 8194.255329409:debug_relp queue:Reg/w0: wti 0x1c12880, action 7, ptr > (nil) > >>> 8194.255332655:debug_relp queue:Reg/w0: wti 0x1c12880: worker exiting > >>> 8194.255336231:debug_relp queue:Reg/w0: debug_relp queue:Reg: Worker > >>> thread 1c12880, terminated, num workers now 0 > >>> 8194.255344540:debug_relp queue:Reg/w0: destructor for debug call stack > >>> 0x7f9bc00008c0 called > >>> 8194.255371534:main thread : debug_relp queue: checking to see if we > >>> need to cancel any worker threads of the primary queue > >>> 8194.255376798:main thread : debug_relp queue: worker threads > >>> terminated, remaining queue size log 0, phys 0. > >>> 8194.255381256:main thread : debug_relp queue: persisting queue to > >>> disk, 0 entries... > >>> 8194.255385525:main thread : strm 0x1c024c0: file 5(relp_queue) > closing > >>> 8194.255389222:main thread : strm 0x1c024c0: file 5(relp_queue) > flush, > >>> buflen 0 (no need to flush) > >>> 8194.255398716:main thread : strm 0x1c02760: file 6(relp_queue) > closing > >>> 8194.255404785:main thread : strm 0x1c02a00: file -1(relp_queue) > >>> closing > >>> 8194.255409145:main thread : strmCloseFile: deleting > >>> '/var/spool/rsyslog/relp_queue.00000001' > >>> 8194.255460812:main thread : strm 0x7f9bc4002480: file 4(messages) > >>> closing > >>> 8194.255466309:main thread : strm 0x7f9bc4002480: file 4(messages) > >>> flush, buflen 0 (no need to flush) > >>> 8194.255479325:main thread : all primary multi-thread sources have > >>> been terminated - now doing aux cleanup... > >>> 8194.255482809:main thread : destructing current config... > >>> 8194.255486662:main thread : calling freeCnf(0x1bf41e0) for module > >>> 'builtin:omfile' > >>> 8194.255490098:main thread : calling freeCnf(0x1bf43a0) for module > >>> 'builtin:ompipe' > >>> 8194.255493809:main thread : calling freeCnf(0x1bf53a0) for module > >>> 'builtin:omfwd' > >>> 8194.255497793:main thread : calling freeCnf(0x1c04b00) for module > >>> 'imuxsock' > >>> 8194.255501565:main thread : calling freeCnf(0x1c05c70) for module > >>> 'imklog' > >>> 8194.255543579:main thread : destructing parser 'rsyslog.rfc5424' > >>> 8194.255547468:main thread : destructing parser 'rsyslog.rfc3164' > >>> 8194.255550784:main thread : pmrfc3164: free parser instance > 0x1bf58b0 > >>> 8194.255559659:main thread : file rsyslogd.c released module > 'lmnet', > >>> reference count now 2 > >>> 8194.255563470:main thread : module lmnet NOT unloaded because it > >>> still has a refcount of 2 > >>> 8194.255566676:main thread : Unloading module builtin:omfile > >>> 8194.255570420:main thread : module lmnet NOT unloaded because it > >>> still has a refcount of 2 > >>> 8194.255573674:main thread : Unloading module builtin:ompipe > >>> 8194.255576857:main thread : module lmnet NOT unloaded because it > >>> still has a refcount of 2 > >>> 8194.255579938:main thread : Unloading module builtin-shell > >>> 8194.255583060:main thread : module lmnet NOT unloaded because it > >>> still has a refcount of 2 > >>> 8194.255586144:main thread : Unloading module builtin:omdiscard > >>> 8194.255589509:main thread : module lmnet NOT unloaded because it > >>> still has a refcount of 2 > >>> 8194.255592658:main thread : Unloading module builtin:omfwd > >>> 8194.255596441:main thread : file omfwd.c released module 'lmnet', > >>> reference count now 1 > >>> 8194.255599981:main thread : module lmnet NOT unloaded because it > >>> still has a refcount of 1 > >>> 8194.255603068:main thread : Unloading module builtin:omusrmsg > >>> 8194.255606240:main thread : module lmnet NOT unloaded because it > >>> still has a refcount of 1 > >>> 8194.255609287:main thread : Unloading module builtin:pmrfc5424 > >>> 8194.255612755:main thread : module lmnet NOT unloaded because it > >>> still has a refcount of 1 > >>> 8194.255615826:main thread : Unloading module builtin:pmrfc3164 > >>> 8194.255619252:main thread : module lmnet NOT unloaded because it > >>> still has a refcount of 1 > >>> 8194.255622315:main thread : Unloading module builtin:smfile > >>> 8194.255625406:main thread : module lmnet NOT unloaded because it > >>> still has a refcount of 1 > >>> 8194.255628486:main thread : Unloading module builtin:smtradfile > >>> 8194.255631753:main thread : module lmnet NOT unloaded because it > >>> still has a refcount of 1 > >>> 8194.255634819:main thread : Unloading module builtin:smfwd > >>> 8194.255637916:main thread : module lmnet NOT unloaded because it > >>> still has a refcount of 1 > >>> 8194.255640987:main thread : Unloading module builtin:smtradfwd > >>> 8194.255644187:main thread : module lmnet NOT unloaded because it > >>> still has a refcount of 1 > >>> 8194.255647267:main thread : Unloading module imuxsock > >>> 8194.255676232:main thread : module lmnet NOT unloaded because it > >>> still has a refcount of 1 > >>> 8194.255680751:main thread : Unloading module imklog > >>> 8194.255694428:main thread : module lmnet NOT unloaded because it > >>> still has a refcount of 1 > >>> 8194.255698085:main thread : Unloading module omrelp > >>> 8194.255750953:main thread : module lmnet NOT unloaded because it > >>> still has a refcount of 1 > >>> 8194.255755236:main thread : module lmregexp NOT unloaded because it > >>> still has a refcount of 1 > >>> 8194.255759705:main thread : file conf.c released module 'lmnet', > >>> reference count now 0 > >>> 8194.255762875:main thread : module 'lmnet' has zero reference > count, > >>> unloading... > >>> 8194.255765901:main thread : Unloading module lmnet > >>> 8194.255780970:main thread : rsyslog runtime de-initialized, current > >>> users 0 > >>> 8194.255784704:main thread : Clean shutdown completed, bye > >>> > >>> > >>> > >>> On Sun, Mar 13, 2016 at 9:30 PM, David Lang <[email protected]> wrote: > >>> > >>>> On Sun, 13 Mar 2016, Kane Kim wrote: > >>>> > >>>> +1to David, having module handle the errors is not 100% reliable, > what if > >>>>> module dies before having a chance to save error log, those messages > >>>>> will > >>>>> be lost. > >>>>> > >>>> > >>>> well, the module is a thread of rsyslog, so if it dies, rsyslog has > died. > >>>> > >>>> But if you are doing large batches (hundreds or thousands), putting > all > >>>> of them in a 'bad messages' file because one has a problem seems like > the > >>>> wrong thing to do. > >>>> > >>>> given that the error is not detected until the batch is being flushed > >>>> for the output, any outputs that have already flushed their batches > can't > >>>> be changed, so the question is if it's worse to have messages resent > to > >>>> those outputs as the batch gets re-processed, or having to have the > output > >>>> go to a "couldn't deliver" file. > >>>> > >>>> It's bad enough if the problem is a corrupt message that can never be > >>>> delivered and the error is a permanent one, but if the problem is > instead a > >>>> temporary error (server is down), you will have a LOT of messages > going > >>>> into this 'couldn't deliver' bucket, when what should really be > happening > >>>> is that rsyslog should be pausing in the processing of messages, > retrying > >>>> after the suspended timeout. > >>>> > >>>> David Lang > >>>> > >>>> > >>>> On Mar 13, 2016 9:07 PM, "David Lang" <[email protected]> wrote: > >>>>> > >>>>> On Sun, 13 Mar 2016, Rainer Gerhards wrote: > >>>>>> > >>>>>> Rainer, can you explain what happens when a batch fails on an > action? > >>>>>> > >>>>>>> > >>>>>>>> > >>>>>>> It depends on when what happens and if we have batches of one or > >>>>>>> batches of many. For batches of one, the failure is immediately > >>>>>>> detected and acted upon. For batches of many,all action strings or > >>>>>>> stored temporarily. During that time, it is assume that the > messages > >>>>>>> could be processed. There is no way around this assumption, > because we > >>>>>>> now run each action completely through the rule engine before the > next > >>>>>>> one is begun to process, which means that other parts of the config > >>>>>>> have actually acted on a message, which means we cannot undo that > >>>>>>> state. If is needed to act on the "real" state, we need to process > >>>>>>> batches of one. There simply is no other solution possible. So > let's > >>>>>>> stay with batches of many. Once the batch is completed, the > temporary > >>>>>>> strings are passed to the output's commitTransaction entry point. > It > >>>>>>> is currently assumed that the output does inteligently handle the > >>>>>>> case, and as it looks most do this well (no regression tests > failed, > >>>>>>> no bad reports since we introduced this with the initial v8 version > >>>>>>> (15+ month ago). If the action fails, status is reflected > accordingly. > >>>>>>> Also, the core engine *should* (but obviously does not support this > >>>>>>> right now) write an error file with the messages in error (just > like > >>>>>>> omelasticsearch does, which has proven to be quite good). > >>>>>>> > >>>>>>> > >>>>>> well, it's not in the specs that modules should have local error > files > >>>>>> the > >>>>>> way omelasticsearch does. > >>>>>> > >>>>>> What I would expect if there is a problem when commiting the batch > is > >>>>>> that > >>>>>> the entire batch would be marked as not delivered and try again with > >>>>>> half > >>>>>> of it. > >>>>>> > >>>>>> This will cause messages to other outputs working from the same > queue > >>>>>> to > >>>>>> get duplciate messages, but it's better than loosing an entire > batch of > >>>>>> messages because one is corrupt in some way. or there is a temporary > >>>>>> problem with the output. > >>>>>> > >>>>>> David Lang > >>>>>> > >>>>>> I have managed to look at least briefly at the commitTransaction > core > >>>>>> > >>>>>>> engine code. I think we can even improve it and may get some > ability > >>>>>>> to do retries if the action itself does not handle that. At the > >>>>>>> minimum, it should have the ability (which was intended originally, > >>>>>>> but pushed away by more urgent work) to write that error file. > >>>>>>> > >>>>>>> I am very grateful that Kane is working on a repro with the > standard > >>>>>>> modules. Once we have that, I can go deeper into the code and check > >>>>>>> what I am thinking about. It might be possible that we cannot > manage > >>>>>>> to repro this with the standard modules. Then we need to think > about a > >>>>>>> way via the testing module to do the same thing. > >>>>>>> > >>>>>>> I will try to address this within the 8.18 timeframe, but cannot > >>>>>>> totally commit to it. There has a lot of work been going on, and > >>>>>>> especially all that CI testing has taken up lots of works. > >>>>>>> Nevertheless, I've been able to iron out quite some nits, so it's > >>>>>>> probably worth it. I would still like to continue to get the CI > >>>>>>> environment into better shape, because now I know what I am doing. > If > >>>>>>> I stop again and let it go for a couple of weeks, I would lose a > lot > >>>>>>> of momentum. I have also do to some work for support customers, > which > >>>>>>> keeps me able to work on rsyslog in general, so this, too, has > >>>>>>> priority (and validly has so because without support customers I > would > >>>>>>> be totally unable to work on rsyslog other than as a hobby) > >>>>>>> > >>>>>>> I hope this explains the current state. > >>>>>>> Rainer > >>>>>>> > >>>>>>> > >>>>>>> Kane, can you try and duplicate your problem using standard > modules? > >>>>>>>> I'm > >>>>>>>> thinking that if you define a omrelp action that doesn't go > >>>>>>>> anywhere, it > >>>>>>>> should return errors similar to what you are trying to do, so you > >>>>>>>> should > >>>>>>>> be > >>>>>>>> able to duplicate the problem that way. > >>>>>>>> > >>>>>>>> David Lang > >>>>>>>> > >>>>>>>> > >>>>>>>> > >>>>>>>> > >>>>>>>> On Tue, 23 Feb 2016, Kane Kim wrote: > >>>>>>>> > >>>>>>>> Looking at omkafka module source code it seems that it relies on > >>>>>>>> rsyslog > >>>>>>>> > >>>>>>>>> retries in DoAction, returning RS_RET_SUSPENDED: > >>>>>>>>> > >>>>>>>>> DBGPRINTF("omkafka: writeKafka returned %d\n", iRet); > >>>>>>>>> if(iRet != RS_RET_OK) { > >>>>>>>>> iRet = RS_RET_SUSPENDED; > >>>>>>>>> } > >>>>>>>>> > >>>>>>>>> I've tried similar code in DoAction, it seems that action > processing > >>>>>>>>> is suspended at that point and messages are not retried to > module. > >>>>>>>>> > >>>>>>>>> > >>>>>>>>> On Tue, Feb 23, 2016 at 9:06 AM, Kane Kim <[email protected] > > > >>>>>>>>> wrote: > >>>>>>>>> > >>>>>>>>> Thanks for your help Rainer, I'll try to debug what's going on, > so > >>>>>>>>> far > >>>>>>>>> > >>>>>>>>>> it > >>>>>>>>>> seems rsyslog doesn't retry even with batch size 1. It doesn't > >>>>>>>>>> retry > >>>>>>>>>> if I > >>>>>>>>>> return RS_RET_SUSPENDED from DoAction as well. > >>>>>>>>>> > >>>>>>>>>> On Tue, Feb 23, 2016 at 9:05 AM, Rainer Gerhards > >>>>>>>>>> <[email protected] > >>>>>>>>>> > >>>>>>>>>> > >>>>>>>>>>> wrote: > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>> > >>>>>>>>>> 2016-02-23 18:03 GMT+01:00 David Lang <[email protected]>: > >>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>>> On Tue, 23 Feb 2016, Rainer Gerhards wrote: > >>>>>>>>>>>> > >>>>>>>>>>>> 2016-02-23 17:38 GMT+01:00 Kane Kim <[email protected]>: > >>>>>>>>>>>> > >>>>>>>>>>>>> > >>>>>>>>>>>>> > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> Hello Rainer, thanks for the prompt reply! To give you some > >>>>>>>>>>>>>> context: > >>>>>>>>>>>>>> I > >>>>>>>>>>>>>> want > >>>>>>>>>>>>>> to write module that both using batching and also can't > loose > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> > >>>>>>>>>>>>> messages in > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>>> any circumstances. Are you saying it is by design that rsyslog > >>>>>>>>>>>>>> can't > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> > >>>>>>>>>>>>> do > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>>> that together? According to documentation rsyslog will retry > if > >>>>>>>>>>>>>> module > >>>>>>>>>>>>>> returns any error. Do you plan to fix this in rsyslog or > update > >>>>>>>>>>>>>> documentation to say batching and retries don't work? > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> > >>>>>>>>>>>>> > >>>>>>>>>>>>> > >>>>>>>>>>>>> It depends on many things. In almost all cases, the retry > should > >>>>>>>>>>>>> work > >>>>>>>>>>>>> well (and does so in practice). Unfortunately, I am pretty > >>>>>>>>>>>>> swamped. > >>>>>>>>>>>>> I > >>>>>>>>>>>>> need to go to a conference tomorrow and have had quite some > >>>>>>>>>>>>> unexpected > >>>>>>>>>>>>> work today. It would probably be good if you could ping me > next > >>>>>>>>>>>>> week > >>>>>>>>>>>>> to see if we can look into more details what is causing you > >>>>>>>>>>>>> pain. > >>>>>>>>>>>>> But > >>>>>>>>>>>>> I can't guarantee that I will be available early next week. > >>>>>>>>>>>>> > >>>>>>>>>>>>> In general, we cannot handle a fatal error here from an > engine > >>>>>>>>>>>>> PoV, > >>>>>>>>>>>>> because everything is already processed and we do no longer > >>>>>>>>>>>>> have the > >>>>>>>>>>>>> original messages. This is simply needed if you want to > process > >>>>>>>>>>>>> messages one after another through the full config (a goal > for > >>>>>>>>>>>>> v8 > >>>>>>>>>>>>> that > >>>>>>>>>>>>> was muuuuch requested). As I said, the solution is to use > >>>>>>>>>>>>> batches of > >>>>>>>>>>>>> one, because otherwise we would really need to turn back time > >>>>>>>>>>>>> and > >>>>>>>>>>>>> undo > >>>>>>>>>>>>> everything that was already done on the messages in question > by > >>>>>>>>>>>>> other > >>>>>>>>>>>>> modules (including state advances). > >>>>>>>>>>>>> > >>>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> I thought that if a batch failed, it pushed all the messages > >>>>>>>>>>>> back on > >>>>>>>>>>>> the > >>>>>>>>>>>> queue and retried with a half size batch until it got to the > one > >>>>>>>>>>>> message > >>>>>>>>>>>> that could not be processed and only did a fatal fail on that > >>>>>>>>>>>> message. > >>>>>>>>>>>> > >>>>>>>>>>>> Now, there is a big difference between a module giving a hard > >>>>>>>>>>>> error > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>> "this > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>>> message is never going to be able to be processed no matter > how > >>>>>>>>>>>> many > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>> times > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>>> it's retried" vs a soft error "there is a problem delivering > >>>>>>>>>>>> things > >>>>>>>>>>>> to > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>> this > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>>> destination right now, retry later". I thought the batch > >>>>>>>>>>>> processing > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>> handled > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>>> these differently. > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>> That's no longer possible with v8, at least generically. As I > said > >>>>>>>>>>> above, we would need to turn back time. > >>>>>>>>>>> > >>>>>>>>>>> But I really run out of time now... > >>>>>>>>>>> > >>>>>>>>>>> Rainer > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> David Lang > >>>>>>>>>>>> > >>>>>>>>>>>> _______________________________________________ > >>>>>>>>>>>> rsyslog mailing list > >>>>>>>>>>>> http://lists.adiscon.net/mailman/listinfo/rsyslog > >>>>>>>>>>>> http://www.rsyslog.com/professional-services/ > >>>>>>>>>>>> What's up with rsyslog? Follow https://twitter.com/rgerhards > >>>>>>>>>>>> NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED > by a > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>> myriad of > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>>> sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST > if > >>>>>>>>>>>> you > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>> DON'T > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>>> LIKE THAT. > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>> _______________________________________________ > >>>>>>>>>>> rsyslog mailing list > >>>>>>>>>>> http://lists.adiscon.net/mailman/listinfo/rsyslog > >>>>>>>>>>> http://www.rsyslog.com/professional-services/ > >>>>>>>>>>> What's up with rsyslog? Follow https://twitter.com/rgerhards > >>>>>>>>>>> NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED > by a > >>>>>>>>>>> myriad > >>>>>>>>>>> of sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST > >>>>>>>>>>> if you > >>>>>>>>>>> DON'T LIKE THAT. > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>> _______________________________________________ > >>>>>>>>>> > >>>>>>>>> rsyslog mailing list > >>>>>>>>> http://lists.adiscon.net/mailman/listinfo/rsyslog > >>>>>>>>> http://www.rsyslog.com/professional-services/ > >>>>>>>>> What's up with rsyslog? Follow https://twitter.com/rgerhards > >>>>>>>>> NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a > >>>>>>>>> myriad > >>>>>>>>> of sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST > if > >>>>>>>>> you > >>>>>>>>> DON'T > >>>>>>>>> LIKE THAT. > >>>>>>>>> > >>>>>>>>> _______________________________________________ > >>>>>>>>> > >>>>>>>> rsyslog mailing list > >>>>>>>> http://lists.adiscon.net/mailman/listinfo/rsyslog > >>>>>>>> http://www.rsyslog.com/professional-services/ > >>>>>>>> What's up with rsyslog? Follow https://twitter.com/rgerhards > >>>>>>>> NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a > >>>>>>>> myriad > >>>>>>>> of > >>>>>>>> sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if > you > >>>>>>>> DON'T > >>>>>>>> LIKE THAT. > >>>>>>>> > >>>>>>>> _______________________________________________ > >>>>>>> rsyslog mailing list > >>>>>>> http://lists.adiscon.net/mailman/listinfo/rsyslog > >>>>>>> http://www.rsyslog.com/professional-services/ > >>>>>>> What's up with rsyslog? Follow https://twitter.com/rgerhards > >>>>>>> NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a > >>>>>>> myriad > >>>>>>> of sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if > you > >>>>>>> DON'T LIKE THAT. > >>>>>>> > >>>>>>> _______________________________________________ > >>>>>>> > >>>>>> rsyslog mailing list > >>>>>> http://lists.adiscon.net/mailman/listinfo/rsyslog > >>>>>> http://www.rsyslog.com/professional-services/ > >>>>>> What's up with rsyslog? Follow https://twitter.com/rgerhards > >>>>>> NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a > >>>>>> myriad > >>>>>> of sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if > you > >>>>>> DON'T LIKE THAT. > >>>>>> > >>>>>> _______________________________________________ > >>>>> rsyslog mailing list > >>>>> http://lists.adiscon.net/mailman/listinfo/rsyslog > >>>>> http://www.rsyslog.com/professional-services/ > >>>>> What's up with rsyslog? Follow https://twitter.com/rgerhards > >>>>> NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a > >>>>> myriad of sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT > POST if > >>>>> you DON'T LIKE THAT. > >>>>> > >>>>> _______________________________________________ > >>>> rsyslog mailing list > >>>> http://lists.adiscon.net/mailman/listinfo/rsyslog > >>>> http://www.rsyslog.com/professional-services/ > >>>> What's up with rsyslog? Follow https://twitter.com/rgerhards > >>>> NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a > myriad > >>>> of sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if you > >>>> DON'T LIKE THAT. > >>>> > >>> > >>> > >> > > _______________________________________________ > > rsyslog mailing list > > http://lists.adiscon.net/mailman/listinfo/rsyslog > > http://www.rsyslog.com/professional-services/ > > What's up with rsyslog? Follow https://twitter.com/rgerhards > > NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a myriad > of sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if you > DON'T LIKE THAT. > _______________________________________________ > rsyslog mailing list > http://lists.adiscon.net/mailman/listinfo/rsyslog > http://www.rsyslog.com/professional-services/ > What's up with rsyslog? Follow https://twitter.com/rgerhards > NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a myriad > of sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if you > DON'T LIKE THAT. > _______________________________________________ rsyslog mailing list http://lists.adiscon.net/mailman/listinfo/rsyslog http://www.rsyslog.com/professional-services/ What's up with rsyslog? Follow https://twitter.com/rgerhards NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a myriad of sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if you DON'T LIKE THAT.

