Ask questions. Get answers. Find technical product solutions from passionate experts in the NXLog community.
Combine syslog and json
kristoffer created
This might seem as an odd thing, but I have a need where I want to combine syslog as well as json in the same message. Syslog should be combined (without the message field) with the complete $raw_event as json. I've successfully converted the entire thing to json with $json_message = to_json();However when I attempt the same thing with to_syslog_ietf(); an error is thrown. How would I achieve this behaviour with CE?Couldn't parse Exec block at C:\Path\nxlog.conf:58; couldn't parse statement at line 72, character 42 in C:\Path\nxlog.conf; function 'to_syslog_ietf()' does not exist or take different arguments.
kristoffer created
Issue with nxlog agent sending logs containing IP instead of hostname
LM_19 created
Hello,My current architecture is a windows nxlog agent sending logs to a remote syslog server. The agent is translating Windows event logs to json encapsulated syslog before sending them.I've encountered an inconsistency with the hostname field of the sent log, most of the sent logs contain the hostname as expected, but some only contains the IP address which creates a mess on the sorting I made on the remote syslog server.I haven't tried anything yet as I don't really know where to look for. My take is that it is a windows event log issue that can't be fixed but i'd like your opinions.Thank you for your help.
LM_19 created
ERROR failed to subscribe to msvistalog events,access denied [error code : 5]; Access is denied
marco.tan created
error message still remain: ERROR failed to subscribe to msvistalog events,access denied [error code : 5]; Access is deniedChange the logon on account to administrator to start service reinstall nxlog in Server added local admin account in manage auditing and security log properties
marco.tan created
AllowIP Directive Not working in EE 6.2
PHILLIPS, DALE (ext) (SMO UKI RC-GB RI PE MT 1 6 1) created
Hi,I am getting the following error when using the AllowIP Directive in Enterprise Edition 6.2:2024-04-02 15:17:42 ERROR [im_udp|SynologySyslog] invalid keyword: AllowIP at C:\Program Files\nxlog\conf\nxlog.conf:45The config snippit containing this is:<Input SynologySyslog>
module im_udp
ListenAddr 0.0.0.0:514
AllowIP 10.0.0.106
<Exec>
parse_syslog_ietf();
</Exec>
</Input><Input SynologySyslog>module im_udpListenAddr 0.0.0.0:514AllowIP 10.0.0.106<Exec> parse_syslog_ietf();</Exec></Input>Any help would be greatly appreciated!!
PHILLIPS, DALE (ext) (SMO UKI RC-GB RI PE MT 1 6 1) created
CE edition not installing correctly on Linux, I think
cschelin created
I spun up a brand-new Linux instance in AWS. I downloaded the RHEL9 CE package and got it onto that instance. I installed it as:yum -y localinstall nxlog-ce-3.2.2329_rhel9.x86_64.rpmThe problems:Nothing gets installed to /opt/nxlog; NXLog gets installed instead to /etc/nxlogThere aren't any modules downloaded/installedWhat am I missing?
cschelin created
NXLog 32-Bit Installation
tputman created
Hello, Does anyone know how to install nxlog on a Windows 32-bit system? Windows Server 2003
tputman created
module csv_parser not found
mike.jung@gopai.com created
Hi:I am new to nxlog but I do haves sending windows events into graylog via nxlogs so I know some basics.I am know trying to parse csv exchange logs.I am running the community version.I realize I have no output or routing statements yet.The log does not complain about the module xm_csv being found but does complain about module csv_parser not being found.I used this as starting point: https://docs.nxlog.co/integrate/exchange.html using the community section for reference.If someone could offer any hints I would be most grateful.--mikejVersion: nxlog-ce-3.2.2329LOGFILE:C:\Program Files\nxlog\data>type nxlog.log2024-03-25 15:15:51 ERROR Couldn't parse Exec block at C:\Program Files\nxlog\conf\nxlog.d\\protocol.conf:21; couldn't parse statement at line 25, character 27 in C:\Program Files\nxlog\conf\nxlog.d\\protocol.conf; module csv_parser not found2024-03-25 15:15:51 ERROR Couldn't parse Exec block at C:\Program Files\nxlog\conf\nxlog.d\\protocol.conf:34; couldn't parse statement at line 38, character 26 in C:\Program Files\nxlog\conf\nxlog.d\\protocol.conf; module csv_parser not found2024-03-25 15:15:51 WARNING not starting unused module smtp_receive2024-03-25 15:15:51 WARNING not starting unused module smtp_send2024-03-25 15:15:51 INFO nxlog-ce-3.2.2329 startedCONFIG FILE: protocol.conf - in nxlog.ddefine BASEDIR C:\Program Files\Microsoft\Exchange Server\V15#Software: Microsoft Exchange Server#Version: 15.0.0.0#Log-type: SMTP Receive Protocol Log#Date: 2024-03-25T19:00:26.686Z#Fields: date-time,connector-id,session-id,sequence-number,local-endpoint,remote-endpoint,event,data,context## MJ number of fields matches count<Extension csv> Module xm_csv Fields date-time, connector-id, session-id, sequence-number, \ local-endpoint, remote-endpoint, event, data, context</Extension><Input smtp_receive>Module im_file File '%BASEDIR%\TransportRoles\Logs\Hub\ProtocolLog\SmtpReceive\RECV*.LOG'<Exec> if $raw_event =~ /^(\xEF\xBB\xBF)?(date-time,|#)/ drop(); else { csv_parser->parse_csv(); $EventTime = parsedate(${date-time}); }</Exec></Input><Input smtp_send>Module im_fileFile '%BASEDIR%\TransportRoles\Logs\Hub\ProtocolLog\SmtpSend\SEND*.LOG'<Exec> if $raw_event =~ /^(\xEF\xBB\xBF)?(date-time,|#)/ drop();else{ csv_parser->parse_csv(); $EventTime = parsedate(${date-time});}</Exec></Input>
mike.jung@gopai.com created
Sending logs to multiple destinations
Anjani created
Hi team,
Our current .conf file has only one output module and sending logs to only one destination.
Can we send the logs to 2 different destination parallelly(Specifically we need to send to Accenture MSS)
Regards,
Anjani CM
Anjani created
ERROR SSL certificate verification failed: unable to get issuer certificate (err: 2)
JLai created
Hello,I am getting the following error message with the SSL configured using om_ssl . Has anyone encountered this issue in the past? The config works without SSL but I want to make SSL to work.Please note that some information has been modified to avoid sensitive information exposure.2024-03-20 00:26:21 INFO connecting to destination_host:###
2024-03-20 00:26:21 INFO successfully connected to destination_host:###
2024-03-20 00:26:21 INFO reconnecting in 1 seconds
2024-03-20 00:26:21 ERROR SSL certificate verification failed: unable to get issuer certificate (err: 2)This is my nxlog agent config code snippet:...
<Output out_to_destination>
Module om_ssl
Host %OUTPUT_DESTINATION_HOST%
Port %OUTPUT_DESTINATION_PORT%
Exec $Message = to_json(); to_syslog_bsd();
CAFile %CERTDIR%\CA.pem
CertFile %CERTDIR%\client-cert.pem
CertKeyFile %CERTDIR%\client-key.pem
AllowUntrusted TRUE
</Output>
...Is there anyway to bypass verification? Is this issue on the nxlog agent side?
JLai created
TLS over UDP (TLS) support?
bt02366 created
Been searching the internet to see if anyone has asked this before.Are there any plans for NXlog to support DTLS for secure low overhead forwarding?
bt02366 created
missing module
bianmingkai created
Hi All, I am trying to test and evaluate the NXlog for collect the dns analytical log(ETL) and forward it to splunk directly. now I am using the community version of NXlog and get below error: 2024-03-14 10:35:31 ERROR Failed to load module from C:\Program Files\nxlog\modules\input\im_etw.dll, The specified module could not be found. ; The specified module could not be found. 2024-03-14 10:35:31 ERROR invalid keyword: HTTPHeader at C:\Program Files\nxlog\conf\nxlog.conf:902024-03-14 10:35:31 ERROR module 'out_to_splunk' has configuration errors, not adding to route '1' at C:\Program Files\nxlog\conf\nxlog.conf:942024-03-14 10:35:31 ERROR route 1 is not functional without output modules, ignored at C:\Program Files\nxlog\conf\nxlog.conf:942024-03-14 10:35:31 WARNING no routes defined!Could someone please help to point the error/misconfiguration from the below NXlog.conf? thanks. nxlog.confPanic Soft#NoFreeOnExit TRUEdefine ROOT C:\Program Files\nxlogdefine CERTDIR %ROOT%\certdefine CONFDIR %ROOT%\conf\nxlog.ddefine LOGDIR %ROOT%\datainclude %CONFDIR%\\*.confdefine LOGFILE %LOGDIR%\nxlog.logLogFile %LOGFILE%Moduledir %ROOT%\modulesCacheDir %ROOT%\dataPidfile %ROOT%\data\nxlog.pidSpoolDir %ROOT%\data<Extension _syslog> Module xm_syslog</Extension><Extension _charconv> Module xm_charconv AutodetectCharsets iso8859-2, utf-8, utf-16, utf-32</Extension><Extension _exec> Module xm_exec</Extension><Extension _fileop> Module xm_fileop # Check the size of our log file hourly, rotate if larger than 5MB <Schedule> Every 1 hour Exec if (file_exists('%LOGFILE%') and \ (file_size('%LOGFILE%') >= 5M)) \ file_cycle('%LOGFILE%', 8); </Schedule> # Rotate our log file every week on Sunday at midnight <Schedule> When @weekly Exec if file_exists('%LOGFILE%') file_cycle('%LOGFILE%', 8); </Schedule></Extension># Snare compatible example configuration# Collecting event log# <Input in># Module im_msvistalog# </Input># # Converting events to Snare format and sending them out over TCP syslog# <Output out># Module om_tcp# Host 192.168.1.1# Port 514# Exec to_syslog_snare();# </Output># # Connect input 'in' to output 'out'# <Route 1># Path in => out# </Route><Input in_dns> Module im_etw Provider Microsoft-Windows-DNSServer</Input><Input dns_analytical_log> Module im_msvistalog Query <QueryList>\ <Query Id="0">\ <Select Path="Microsoft-Windows-DNS-Server/Analytical">*</Select>\ </Query>\ </QueryList></Input> <Output out_to_splunk> Module om_http URL http://192.168.1.85:8088/services/collector ContentType application/json Exec to_json(); HTTPHeader Authorization: 6aad1862-c232-4613-a248-bc58f0885ea8</Output><Route 1> Path dns_analytical_log => out_to_splunk</Route>
bianmingkai created
Missing dependencies
cam591 created
I find instructions for installing the Enterprise edition. I'm trying to install the Community edition. I can't find the tar file, only the rpm file.I cannot resolve all the missing dependencies:libc.so.6, libcrypt.so.2, libcrypto.so.3, libssl.so.3, libsystemd.so.0 I cannot convince my management to pay for the Enterprise edition without first demonstrating the Community edition. Since the documentation for the Community edition is so poor, I will not advocate paying to only find that the documentation for the Enterprise edition is no better. How do I install the needed dependencies?
cam591 created
NXLogs Not Being received
Nathan Wyatt created
Hello all, I have a bit of a problem and was hoping someone can put in their two cents. I have recently set up NXLogs to start sending DHCP logs to a second server for one of our security applications. However, there is no record of the logs being received by it (or any traffic to suggest that the logs are leaving the DHCP server). We are successfully receiving logs for the first Security Server, just not the second (most recent addition). I have ran a Netstat -a command from the DHCP server and it shows there is an active connection going to the correct IP range and port. We have looked at the firewall and found that there are no packets being dropped by it either, and also no records that traffic is going from our DHCP server to our second Security Server. So all in all, I'm at a bit of a loss for how to troubleshoot this and was wondering if anyone had any ideas? PSB for a copy of our .conf file, just in case anyone spots a glaring error (I have redacted IP ranges, ports, etc…) Panic Soft#NoFreeOnExit TRUEdefine ROOT C:\Program Files\nxlogdefine WINDHCP_OUTPUT_DESTINATION_ADDRESS x.x.x.xdefine WINDHCP_OUTPUT_DESTINATION_ADDRESS2 x.x.x.xdefine WINDHCP_OUTPUT_DESTINATION_PORT xxxxdefine WINDHCP_OUTPUT_DESTINATION_PORT2 xxxModuledir %ROOT%\modulesCacheDir %ROOT%\dataPidfile %ROOT%\data\nxlog.pidSpoolDir %ROOT%\dataLogFile %ROOT%\data\nxlog.log<Extension _json> Module xm_json</Extension><Input dhcp_server_eventlog> Module im_msvistalog <QueryXML> <QueryList> <Query Id="0" Path="System"> <Select Path="System">*[System[Provider[@Name='Microsoft-Windows-DHCP-Server']]]</Select> </Query> <Query Id="0"> <Select Path="DhcpAdminEvents">*</Select> <Select Path="Microsoft-Windows-Dhcp-Server/FilterNotifications">*</Select> <Select Path="Microsoft-Windows-Dhcp-Server/Operational">*</Select> </Query> </QueryList> </QueryXML> Exec $EventTime = integer($EventTime) / 1000; Exec $EventReceivedTime = integer($EventReceivedTime) / 1000; Exec to_json();</Input><Input audit_logs_csv> Module im_file File "c:\DHCP\-*.log" SavePos TRUE InputType LineBased Exec $Message = $raw_event;</Input><Output SecurityServer1> Module om_udp Host %WINDHCP_OUTPUT_DESTINATION_ADDRESS% Port %WINDHCP_OUTPUT_DESTINATION_PORT%</Output><Output SecurityServer2> Module om_udp Host %WINDHCP_OUTPUT_DESTINATION_ADDRESS2% Port %WINDHCP_OUTPUT_DESTINATION_PORT2%</Output><Route 1r> Path dhcp_server_eventlog,audit_logs_csv => SecurityServer1</Route><Route 2> Path dhcp_server_eventlog,audit_logs_csv => SecurityServer2</Route> Thanks in advance for the help.
Nathan Wyatt created
New User - would love some assistance
Finalcut created
Hi So im a brand new user to NXLog, and NXlog are refusing to offer me any support unless i pay for it, which i feel is a little unfair given i have literraly just purchased 8 Enterprise Editon licenses . However i have got a config file which im working with. So far i have two problems 1 - The resulting log file is empty2 - I am receiving the following errors2024-03-05 14:31:28 ERROR [im_maculs|uls] Could not get proc_info, skipping log @ 486802024-03-05 14:31:28 WARNING [im_maculs|uls] Avoided padding for log ending @ 0xBE39 I am not sure on the best course of action here, or wether i need to upload the actual config file, if anybody can offer any help or guidnace at all it would be greatly appreciated. More than happy to prove more info if it helps Thanks
Finalcut created
NXLOG Windows CE 2.9.1716
zaklewis created
Sorry if this has been asked before, but I couldn't find anything related.I'm after NXLOG version CE 2.9.1716 for Windows however only Ubuntu & Debian is available from the download section. Does anybody know how I can obtain the Windows file?
zaklewis created
Compression and Encryption
billychua created
HiI have configured compression and encryption for locally stored logs, and it seems to be working fine. However, when I run the command c:\program files\nxlog\nxlog-processor.exe -c d:\data\decrypted.conf, I encounter an error while attempting to decrypt the currently active file. The error message reads: 'error [im_file:enc_in] Crypto SSL error: error:0606506D:digital envelope routines:EVP_DecryptFinal_ex:wrong final block length.' Despite this error, the file is decrypted successfully, and we are able to read the log file clearly. Could you please advise on the meaning of this error? I have not encountered any errors for older encrypted files. Thank youOur current config is as follows:nxlog.confPanic Softdefine INSTALLDIR D:\Program Files\nxlog#ModuleDir %INSTALLDIR%\modules#CacheDir %INSTALLDIR%\data#SpoolDir %INSTALLDIR%\datadefine CERTDIR %INSTALLDIR%\certdefine CONFDIR %INSTALLDIR%\conf\nxlog.d# Note that these two lines define constants only; the log file location# is ultimately set by the `LogFile` directive (see below). The# `MYLOGFILE` define is also used to rotate the log file automatically# (see the `_fileop` block).define LOGDIR D:\Program Files\nxlog\datadefine MYLOGFILE %LOGDIR%/nxlog.log# If you are not using NXLog Manager, disable the `include` line# and enable LogLevel and LogFile.#include %CONFDIR%\*.confLogLevel INFOLogFile %MYLOGFILE%<Extension xml> Module xm_xml</Extension><Extension exec> Module xm_exec</Extension><Extension _syslog>Module xm_syslog</Extension><Extension zlib> Module xm_zlib</Extension><Extension crypto> Module xm_cryptoPasswordFile "d:\\Program Files\\nxlog\\conf\\nxlogkeyfile.pem"</Extension><Extension fileop> Module xm_fileop</Extension># Input from remote relay<Input nxlog_relay> Module im_ssl ListenAddr 0.0.0.0:8514 CAFile %CERTDIR%/root.pem CertFile %CERTDIR%/xxx..pem CertkeyFile %CERTDIR%/xxx..pem RequireCert FALSE Exec $Hostname = hostname(); parse_syslog(); $DeviceHostname = $Hostname;</Input># This Section contains the configuration to receive logs forwarded by Servers<Input servers_ssl> Module im_ssl ListenAddr 0.0.0.0:7514 CAFile %CERTDIR%/root.pem CertFile %CERTDIR%/xxx..pem CertkeyFile %CERTDIR%/xxx..pem RequireCert FALSE Exec $Hostname = hostname(); parse_syslog(); $DeviceHostname = $Hostname; </Input><Output log_local_encrypted>Module om_fileFile "d:/data/nxlogstore/" + $DeviceHostname + "/" + $DeviceHostname + "-" + strftime(now(), '%Y%m%d') + ".log"CreateDir trueExec to_syslog_ietf();OutputType zlib.compress, crypto.aes_encrypt</Output><Output log_remote_encrypted> Module om_fileFile "d:/data/nxlogstore/" + $DeviceHostname + "/" + $DeviceHostname + "-" + strftime(now(), '%Y%m%d') + ".log.gz.enc"CreateDir trueExec to_syslog_ietf();OutputType zlib.compress, crypto.aes_encrypt</Output># Path to forward logs to locally<Route Windows_Network_To_Locally> Path servers_ssl, network_tcp_ssl => log_local_encrypted</Route># Path to forward logs to locally<Route Remote_Windows_Network_To_Locally> Path nxlog_relay => log_remote_encrypted</Route># This block rotates `%MYLOGFILE%` on a schedule. Note that if `LogFile`# is changed in managed.conf via NXLog Manager, rotation of the new# file should also be configured there.<Extension _fileop> Module xm_fileop # Check the size of our log file hourly, rotate if larger than 5MB <Schedule> Every 1 hour <Exec> if ( file_exists('%MYLOGFILE%') and (file_size('%MYLOGFILE%') >= 5M) ) { file_cycle('%MYLOGFILE%', 8); } </Exec> </Schedule> # Rotate our log file every week on Sunday at midnight <Schedule> When @weekly Exec if file_exists('%MYLOGFILE%') file_cycle('%MYLOGFILE%', 8); </Schedule></Extension>Regards, Billy
billychua created
Splitting Logs by filter and send them to two different Graylogs
reesthil created
Hello everyone,I'm trying to solve a problem that seems simple.I would like to log Windows events on two different log servers. I would like to send all relevant logs to a Graylog but without the MSSQL logs. These are filtered and sent to another Graylog.Filtering by “MSSQL-ONLY” works fine, but dropping MSSQL events does not work. I get all logs including MSSQL an the "logs" output.Any idea? Windows Server 2022, nxlog-ce-3.2.2329.msi define ROOT C:\Program Files\nxlog
define CERTDIR %ROOT%\cert
define CONFDIR %ROOT%\conf
define LOGDIR %ROOT%\data
define LOGFILE %LOGDIR%\nxlog.log
LogFile %LOGFILE%
Moduledir %ROOT%\modules
CacheDir %ROOT%\data
Pidfile %ROOT%\data\nxlog.pid
SpoolDir %ROOT%\data
<Extension gelf>
Module xm_gelf
</Extension>
<Input eventlog>
Module im_msvistalog
Query <QueryList>
<Query Id="0">
<Select Path="Application"></Select>
<Select Path="System"></Select>
<Select Path="Security"></Select>
<Select Path="Microsoft-Windows-Windows Defender/Operational"></Select>
</Query>
</QueryList>
<Exec>
if ($SourceName = "SQLSERVER") drop();
</Exec>
</Input>
<Input sqllog>
Module im_msvistalog
Query <QueryList>
<Query Id="0">
<Select Path="Application">*[System[Provider[@Name='MSSQLSERVER']]]</Select>
</Query>
</QueryList>
</Input>
<Output logs>
Module om_tcp
Host graylog01.something.com
Port 12202
OutputType GELF_TCP
Exec $Hostname = 'XYZ.somthing.com';
</Output>
<Output sqllogs>
Module om_tcp
Host graylog02.something.com
Port 12202
OutputType GELF_TCP
Exec $Hostname = 'XYZ.somthing.com';
</Output>
<Route eventlog_to_udp>
Path eventlog => logs
</Route>
<Route sqllog_to_udp>
Path sqllog => sqllogs
</Route>
reesthil created
How to use wildcard on IM config file for YYMMDDN.log
Davin created
I would like to know how to use the wildcard if the logs name file contains a date. # Monitor application log files<Input watchfile> Module im_file File 'C:\\Application\\log\\240220N.Log' Exec $Message = $raw_event; Exec if file_name() =~ /.*\\(.*)/ $SourceName = $1; SavePos TRUE Recursive TRUE</Input>Thank you
Davin created
NXLogs routed to two destinations.
shahad1 created
We have configured NXLog to monitor DHCP server logs and sends it to two different destinations using TCP:what is the correct way of routing the output to two diffrent distnations..<Output out1> Module om_tcp Host destination1 Port XXX </Output><Output out2> Module om_tcp Host destination2 Port XXXX </Output><Route route1> Path input1 => out1 Path input2 => out2</Route>
shahad1 created