Need help understanding the use of the buffer module in the TCP module of NXLog Community Edition

#1 Prakash

Dear Team,


Issue :
  1. I'm trying to use NXLog Community Edition to send logs to Kiwi Syslog. I'm using the TCP connection method. I noticed that when I disconnect the destination for some period of time, after turning it back up after some hours, I can still see the logs that were generated during the destination downtime. This is happening even without the buffer module.

I'm wondering what the use of the buffer module in the TCP module is. Is it necessary to use the buffer module to ensure that all logs are sent to the destination, even if the destination is temporarily unavailable?

2. From the below configuration file, if we use a memory and disk-based buffer, how will the logs be allocated? And if it creates a buffer logs.q file, what is the maximum size of each file? 



## Please set the ROOT to your nxlog installation directory

#define ROOT C:\Program Files\nxlogdefine ROOT C:\Program Files (x86)\nxlog

Moduledir %ROOT%\modulesCacheDir %ROOT%\dataPidfile %ROOT%\data\nxlog.pidSpoolDir %ROOT%\dataLogFile %ROOT%\data\nxlog.log

<Extension syslog> Module xm_syslog</Extension>

<Input generate_data>   Module      im_testgen   #Maxcount 100   Exec        to_syslog_bsd();</Input>

# Monitor Windows event logs#<Input eventlog>#  Module im_msvistalog#</Input>

<Processor buffer>  Module      pm_buffer   #10 MB buffer   MaxSize  10000   Type   Disk MEM   #warn at 5MB  WarnLimit   5000</Processor>

<Output logs_output>   Module  om_file   File    "C:\Users\test\output_logs.log"</Output>

<Output tcp> Module om_tcp Host 192.168.x.x Port 1514</Output>

<Route 1> Path generate_data => buffer => logs_output => tcp</Route>


(for testing I'm using test gen module)

provide environment description

windows 10 IOT Enterprise


Nxlog community latest version


#2 gahorvath

Hi Prakash,

please use a code block to format the configuration. This is extremely hard to read.