NXLog Enterprise Edition v4.2 Now Released

We are pleased to announce that NXLog Enterprise Edition v4.2 is now available. This new version comes with more than a hundred fixes and enhancements since v4.1 that our team has worked on to reach this milestone.

Installation and upgrade instructions are available in the User Guide under the Deployment section for your platform/s.

See below for an excerpt from the changelog.


Enhancements and additions in this release:

  • The Windows MSI installer has passed the Windows Server 2012 R2, 2016 and 2019 certification tests.

  • Added support for Windows 2016 Nano.

  • Man pages have been added to the Unix packages.

  • "NXLog started" is now logged via im_internal.

  • Using the config file from the INSTALLDIR by default on Windows is now supported.

  • Added proxy support to om_http and om_elasticsearch.

  • xm_msdns now supports different date formats with the DateFormat configuration directive.

  • Added wildcard support for the xm_grok Pattern configuration directive.

  • Added a CaptureEventXML configuration directive to im_msvistalog to collect the data in XML format in $EventXML.

  • im_acct now generates $Severity and $SeverityValue fields.

  • RPM installer now works on systems without systemctl.

  • om_webhdfs was enhanced to be more error prone.

  • im_msvistalog also resolves SID values in UserData.

  • om_batchcompress now uses 2514 as the default port if Port is not defined.

  • Implemented support for om_elasticsearch to send _id.

  • im_fim now treats directories case insensitively.

  • Added enhancement so that fix_year() no longer sets a date in the future.

  • xm_syslog can also use ExecutionProcessID if ProcessID is not available when generating Syslog.

  • Added a LogConnections boolean configuration option to im_wseventing.

  • Added a call() procedure to xm_python.

Fixes in this release:

  • Fixed a memory leak in im_file.

  • Fixed xm_rewrite with an empty Keep configuration directive.

  • Fixed issue where starting the service via nxlog.exe failed on Windows because the default config path was invalid.

  • Fixed an issue with om_ruby unable to load gems.

  • Fixed issue where xm_syslog could only handle $Hostname when it was holding a string type.

  • Fixed issue where im_linuxaudit could enter into an infinite loop with certain audit rules.

  • Fixed issue where undefined values were causing a segmentation fault with xm_python.

  • Fixed assertion failure errors in xm_charconv on invalid UTF-16 input.

  • Fixed issue where crash occurs if a module hangs on shutdown.

  • Suppressed DNS lookup failure error messages in xm_resolver.

  • Prevent xm_charconv from adding a BOM when converting to UTF-8.

  • Fixed a race condition in xm_fileop when file_cycle() was used simultaneously on the same file which resulted in the process hanging.

  • Fixed parsing issues in xm_xml, xm_leef, xm_nps uncovered by fuzz-testing.

  • Fixed issue where im_udp was terminated with an assertion failure.

  • Fixed a regression in om_elasticsearch that resulted in an "invalid version format" error on the ES side.

  • A fix was made to an issue that possibly caused im_wseventing to get stuck and not accept further connections.

  • Fixed MSI installers with a custom installation path.

  • Fixed the socket cleanup in im_batchcompress which was likely responsible for assertion failure errors under a high load.

  • Fixed a segmentation fault caused by an invalid config with no output module defined.

  • Fixed xm_grok handling of the Pattern configuration directive.

  • Fixed the default SpoolDir value on Linux/Unix.

  • Fixed a regression in im_wseventing complaining about HTTPSCAFile.

  • Fixed im_python hanging when calling into python code via xm_python.

  • Fixed parsing issues uncovered by fuzz-testing in xm_bsm on invalid input.

  • Prevented crashing on division-by-zero.

  • om_ruby no longer needs "module" to be passed to a method.

  • im_etw now generates ChannelID as an integer instead of Channel.

  • Perl modules can now take function call arguments via perl_call() and the block can be used to pass configuration options.

  • xm_admin and xm_soapadmin should not terminate the connection if the message counters cannot be initialized.

  • Fixed issue where xm_perl was causing assertion failures related to mutex handling.

  • Fixed certificate cleanup in im_wseventing, im_batchcompress and im_http which could have caused a memory leak.

  • Fixed issue where im_batchcompress regression provided the message "ERROR zlib decompression error, data error (Z_DATA_ERROR)".

  • Fixed an issue so that im_wseventing no longer gets stuck with flow-control enabled if the destination queue fills up.

  • Fixed issue where im_checkpoint turned into a zombie process after a few seconds.

  • Fixed issue where certificate structure was not freed in some SSL/TLS handling modules that may have resulted in a minor leak with a lot of connections.

  • Fixed a potential crash with xm_admin disconnects.

  • Fixed Kerberos support in im_wseventing on Linux.

  • Removed SpoolDir from the default nxlog.conf.


Feel free to get in touch if you have any questions or suggestions about this release.

Happy logging!

Share this post