<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<div>
<h1>3.24.1</h1>
<h2>Highlights</h2>
<ul>
<li>Add a new template function called <code>$(format-flat-json)</code>, which generates<br>
flattened json output. This is useful for destinations, where the json<br>
parsing does not handle nested json format. (<a href="https://github.com/syslog-ng/syslog-ng/pull/2890">#2890</a>)</li><li>Add ISO 8601 compliant week numbering. Use it with the <code>${ISOWEEK}</code> macro<br>
and and all its variants: <code>S_ISOWEEK</code>, <code>R_ISOWEEK</code> and <code>
C_ISOWEEK</code>. (<a href="https://github.com/syslog-ng/syslog-ng/pull/2878">#2878</a>)</li><li>Add <code>add-contextual-data()</code> glob selector. It matches the message with shell<br>
style globbing. Enable it by setting <code>selector(glob("$my_template")</code> in the<br>
<code>add-contextual-data()</code> block. (<a href="https://github.com/syslog-ng/syslog-ng/pull/2936">#2936</a>)</li><li>Add new rewrite operations to manipulate the timezone portion of timestamps have<br>
been added. <code>set-timezone()</code> to set the timezone value to a specific value,<br>
<code>fix-timezone()</code> to fix up an incorrectly recognized timezone and <code>
guess-timezone()</code><br>
to automatically deduce the timezone value on the assumption that the message<br>
is received in near real time. (<a href="https://github.com/syslog-ng/syslog-ng/pull/2818">#2818</a>)</li><li>Send Server Name Identification (SNI) information with <code>transport(tls)</code>.<br>
Enable it by setting the <code>sni(yes)</code> option in the <code>tls</code> block in your<br>
<code>destination</code>. (<a href="https://github.com/syslog-ng/syslog-ng/pull/2930">#2930</a>)</li></ul>
<h2>Features</h2>
<ul>
<li><code>templates</code>: change the <code>$LOGHOST</code> macro to honour <code>
use-fqdn()</code> (<a href="https://github.com/syslog-ng/syslog-ng/pull/2894">#2894</a>)</li><li>Define <code>syslog-ng-sysconfdir</code> (<a href="https://github.com/syslog-ng/syslog-ng/pull/2932">#2932</a>)</li><li><code>dqtool</code>: add assign dqfile to persist file feature (<a href="https://github.com/syslog-ng/syslog-ng/pull/2872">#2872</a>)</li></ul>
<h2>Bugfixes</h2>
<ul>
<li>Fix backtick subsitution of defines/environment variables in the main configuration file. (<a href="https://github.com/syslog-ng/syslog-ng/issues/2906">#2906</a>,
<a href="https://github.com/syslog-ng/syslog-ng/pull/2909">#2909</a>)</li><li>Fix SCL block parameter substitution of quoted escaped newline (<a href="https://github.com/syslog-ng/syslog-ng/pull/2901">#2901</a>)</li><li><code>python, diskq, random-generator source</code>: crash after failed reload (<a href="https://github.com/syslog-ng/syslog-ng/pull/2907">#2907</a>)</li><li>Fix crash at shutdown on 32bit systems (<a href="https://github.com/syslog-ng/syslog-ng/issues/2893">#2893</a>,
<a href="https://github.com/syslog-ng/syslog-ng/pull/2895">#2895</a>)</li><li>Invalidate the value of the <code>LEGACY_MSGHDR</code> macro in case either the
<code>PID</code> or the <code>PROGRAM</code><br>
macros are <code>unset()</code> using a <code>rewrite</code> rule. Previously <code>
LEGACY_MSGHDR</code> would retain the old values. (<a href="https://github.com/syslog-ng/syslog-ng/pull/2896">#2896</a>)</li><li>on 32bit platform <code>diskq</code> ftruncate could fail due to size 32/64 interface (<a href="https://github.com/syslog-ng/syslog-ng/pull/2892">#2892</a>)</li><li>Support new tzdata format, starting from version 2009.XXX, in tzinfo parser. (<a href="https://github.com/syslog-ng/syslog-ng/pull/2898">#2898</a>)</li><li><code>udp, udp6, tcp, tcp6, syslog, network destination</code>: Correctly detect and set
<code>IP_MULTICAST_TTL</code><br>
in case of multicast ip address (<a href="https://github.com/syslog-ng/syslog-ng/pull/2905">#2905</a>)</li><li>Fix hostname resolve on systems with only the loopback network interface configured (<a href="https://github.com/syslog-ng/syslog-ng/pull/2933">#2933</a>)</li><li><code>wildcard-file()</code>: Add <code>multi-line()</code>, <code>pad_size()</code> and
<code>multi-line-mode()</code> option validation. (<a href="https://github.com/syslog-ng/syslog-ng/pull/2922">#2922</a>)</li><li><code>kafka-c</code>: Fix multiple memleaks (<a href="https://github.com/syslog-ng/syslog-ng/pull/2944">#2944</a>)</li></ul>
<h2>Other changes</h2>
<ul>
<li><code>geoip</code>: remove deprecated module, <code>geoip2</code> database location detection (<a href="https://github.com/syslog-ng/syslog-ng/pull/2780">#2780</a>)</li><li>various refactor, build issue fixes (<a href="https://github.com/syslog-ng/syslog-ng/pull/2902">#2902</a>)</li></ul>
<h2>Notes to the developers</h2>
<ul>
<li><code>LightRunWithStrace</code>: Run syslog-ng behind strace (<a href="https://github.com/syslog-ng/syslog-ng/pull/2921">#2921</a>)</li><li><code>LightVerboseLogOnError</code>: Increase default pytest verbosity on error (<a href="https://github.com/syslog-ng/syslog-ng/pull/2919">#2919</a>)</li><li>Dbld image caching (<a href="https://github.com/syslog-ng/syslog-ng/pull/2858">#2858</a>)</li><li>Dbld gradle caching (<a href="https://github.com/syslog-ng/syslog-ng/pull/2857">#2857</a>)</li><li><code>logreader,logsource</code>: move <code>scratch-buffer</code> mark and reclaim into
<code>LogSource</code> (<a href="https://github.com/syslog-ng/syslog-ng/pull/2903">#2903</a>)</li></ul>
<h2>Credits</h2>
<p>syslog-ng is developed as a community project, and as such it relies<br>
on volunteers, to do the work necessarily to produce syslog-ng.</p>
<p>Reporting bugs, testing changes, writing code or simply providing<br>
feedback are all important contributions, so please if you are a user<br>
of syslog-ng, contribute.</p>
<p>We would like to thank the following people for their contribution:</p>
<p>Andras Mitzki, Antal Nemes, Attila Szakacs, Balazs Scheidler, Bertrand Jacquin,<br>
Gabor Nagy, Henrik Grindal Bakken, Kerin Millar, kjhee43, Laszlo Budai,<br>
Laszlo Szemere, László Várady, Péter Kókai, Raghunath Adhyapak, Zoltan Pallagi.</p>
</div>
<br>
</div>
<div style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div id="Signature">
<div><br>
</div>
<div><br>
</div>
<span></span></div>
</body>
</html>