Re: syslog-ng version 4.9.0 is now available

Hofi <[email protected]> Tue, 26 Aug 2025 13:54:50 +0200
Newsgroups gmane.comp.syslog-ng
Message-ID <a0a4ee30-8dd9-4067-8ae9-c28c46f136ff@Spark>
--===============6078955907403047187==
Content-Type: multipart/alternative; boundary="68ada090_77465f01_205d"

--68ada090_77465f01_205d
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

ah, kozben meglett
https://github.com/syslog-ng/syslog-ng/pull/5441

koszi a jelzest=21
udv

=E2=80=94=E2=80=94=E2=80=94=E2=80=94=E2=80=94=E2=80=94=E2=80=94=E2=80=94=E2=
=80=94=E2=80=94=E2=80=94=E2=80=94=E2=80=94=E2=80=94=E2=80=94=E2=80=94=E2=80=
=94
Hoffmann Istvan
On Aug 25, 2025 at 11:16 +0200, Peter Czanik (pczanik) <Peter.Czanik=40on=
eidentity.com>, wrote:
> Hi Gyula,
>
> Thanks for the report=21 I talked to the developer, who worked on it, a=
nd it is not a known issue. Please open a GitHub issue at https://github.=
com/syslog-ng/syslog-ng/issues/=C2=A0for easier tracking, and also attach=
 a minimal configuration to reproduce the problem, together with some inf=
ormation about your environment (number of log source hosts, message rate=
, etc.).
>
> Thanks,
> Peter
>
> Peter Czanik (CzP) <peter.czanik=40oneidentity.com>
> Balabit (a OneIdentity company) / syslog-ng upstream
> https://syslog-ng.com/community/
> https://twitter.com/PCzanik
>
> =46rom: Kerekes Gyula <gyula=40harcinyul.hu>
> Sent: =46riday, August 22, 2025 10:35
> To: syslog-ng=40lists.balabit.hu <syslog-ng=40lists.balabit.hu>
> Subject: =5Bsyslog-ng=5DRe: syslog-ng version 4.9.0 is now available
>
> CAUTION: This email originated from outside of the organization. Do not=
 follow guidance, click links, or open attachments unless you recognize t=
he sender and know the content is safe.
>
> Hi,
>
>
> I tried this stats exporter-dont-log() feature and it works well but it=
 seems like it has a mem leak somewhere. I tried to switch off the promet=
heus data collection to one of the syslog-ng hosts and the mem consumptio=
n stayed fairly low. On the other hand all the others used 1-2 gigs of RS=
S mem. Is it a known issue=3F
>
> Gyula
>
> 2025. 07. 17. 15:19 keltez=C3=A9ssel, Peter Czanik (pczanik) =C3=ADrta:=

> > Hi,
> >
> > I am happy to announce that version 4.9.0 of syslog-ng is now availab=
le. Thanks everyone who contributed code, documentation, testing, or in a=
ny other way.
> >
> > Peter
> >
> > 4.9.0
> > Highlights
> >
> > =E2=80=A2 > > stats-exporter: Added two new sources, stats-exporter()=
=C2=A0and stats-exporter-dont-log(), which directly serve the output of s=
yslog-ng-ctl stats=C2=A0and syslog-ng-ctl query=C2=A0to a http scraper. T=
he only difference is that stats-exporter-dont-log()=C2=A0suppresses log =
messages from incoming scraper requests, ensuring no messages appear in t=
he log path. Meanwhile, stats-exporter()=C2=A0logs unparsed messages, sto=
ring incoming scraper HTTP requests in the MSG=C2=A0field.
> > Example usage for a Prometheus Scraper which logs the HTTP request of=
 the scraper to /var/log/scraper.log:
> > =40version: 4.9
> > =40include =22scl.conf=22
> >
> > source s=5Fprometheus=5Fstat =7B
> >    stats-exporter(
> >        ip(=220.0.0.0=22)
> >        port(8080)
> >        stat-type(=22query=22)
> >        stat-query(=22*=22)
> >        scrape-freq-limit(30)
> >        single-instance(yes)
> >    );
> > =7D;
> >
> > log =7B
> >    source(s=5Fprometheus=5Fstat);
> >    destination =7B file(/var/log/scraper.log); =7D;
> > =7D;
> >
> Example usage for a generic HTTP Scraper which sends e.g. the GET /stat=
s HTTP/1.1 HTTP request to get statistics of syslog-ng, do not want to lo=
g or further process the HTTP requests in the log pipe, and needs the res=
ponse in CSV format:
> =40version: 4.9
> =40include =22scl.conf=22
>
> source s=5Fscraper=5Fstat =7B
>    stats-exporter-dont-log(
>        ip(=220.0.0.0=22)
>        port(8080)
>        stat-type(=22stats=22)
>        stat-format(=22csv=22)
>        scrape-pattern(=22GET /stats*=22)
>        scrape-freq-limit(30)
>        single-instance(yes)
>    );
> =7D;
>
> log =7B
>    source(s=5Fscraper=5Fstat);
> =7D;
> Note: A destination is not required for this to work; the stats-exporte=
r()=C2=A0source will respond to the scraper regardless of whether a desti=
nation is present in the log path.
> Available options:
> stat-type(string)=C2=A0- query=C2=A0or stats, just like for the syslog-=
ng-ctl=C2=A0command line tool, see there for the details
> stat-query(string)=C2=A0- the query regex string that can be used to fi=
lter the output of a query=C2=A0type request
> stat-format(string)=C2=A0- the output format of the given stats request=
, like the -m=C2=A0option of the syslog-ng-ctl=C2=A0command line tool
> scrape-pattern(string)=C2=A0=E2=80=93 the pattern used to match the HTT=
P header of incoming scraping requests. A stat response will be generated=
 and sent only if the header matches the pattern string
> scrape-freq-limit(non-negative-int)=C2=A0- limits the frequency of repe=
ated scraper requests to the specified number of seconds. Any repeated re=
quest within this period will be ignored. A value of 0 means no limit
> single-instance(yes/no)=C2=A0- if set to yes=C2=A0only one scraper conn=
ection and request will be allowed at once
> (=235259)
>
> =E2=80=A2 > syslog()=C2=A0source driver: add support for R=46C6587 styl=
e auto-detection of
> octet-count based framing to avoid confusion that stems from the sender=

> using a different protocol to the server. This behaviour can be enabled=

> by using transport(auto)=C2=A0option for the syslog()=C2=A0source.
> (=235322)
> =E2=80=A2 > wildcard-file: Added inotify-based regular file change dete=
ction using the existing inotify-based directory monitor.
> This improves efficiency on OSes like Linux, where only polling was ava=
ilable before, significantly reducing CPU usage while enhancing change de=
tection accuracy.
> To enable this feature, inotify kernel support is required, along with =
monitor-method()=C2=A0set to inotify=C2=A0or auto, and follow-freq()=C2=A0=
set to 0.
> (=235315)
> =46eatures
>     =E2=80=A2 > cisco: Added support for Cisco Nexus NXOS 9.3 syslog fo=
rmat.
> The parser now recognises NXOS 9.3 timestamps in YYYY MMM DD HH:MM:SS=C2=
=A0format and handles the different
> sequence number prefix (: instead of seqno: ) used by NXOS 9.3 compared=
 to traditional IOS formats.
> Example Cisco configuration:
> Example syslog-ng configuration:
> =40include =22scl.conf=22
>
> source s=5Fcisco =7B
>    network(ip(0.0.0.0) transport(=22udp=22) port(2000) flags(no-parse))=
;
> =7D;
>
> parser p=5Fcisco =7B
>    cisco-parser();
> =7D;
>
> destination d=5Fplaceholder =7B
>    =23 Define your destination here
> =7D;
>
> log =7B
>    source(s=5Fcisco);
>    parser(p=5Fcisco);
>    destination(d=5Fplaceholder);
> =7D;
> (=235412)
>         =E2=80=A2 NXOS: (config)=23 logging server <syslog-ng-server-ip=
> port 2000
>         =E2=80=A2 IOS: (config)=23 logging host <syslog-ng-server-ip> t=
ransport udp port 2000
>     =E2=80=A2 > bigquery(), google-pubsub-grpc(): Added service-account=
() authentication option.
> Example usage:
> destination =7B
>    google-pubsub-grpc(
>        project(=22test=22)
>        topic(=22test=22)
>        auth(service-account(key (=22path=5Fto=5Fservice=5Faccount=5Fkey=
.json=22)))
>    );
> =7D;
> Note: In contrary to the http()=C2=A0destination's similar option,
> we do not need to manually set the audience here as it is
> automatically recognized by the underlying gRPC API.
> (=235270)
>     =E2=80=A2 > gRPC based destinations: Added response-action()=C2=A0o=
ption
> With this option, it is possible to fine tune how syslog-ng
> behaves in case of different gRPC results.
> Supported by the following destination drivers:
> Supported gRPC results:
> Supported actions:
> Usage:
> google-pubsub-grpc(
>  project(=22my-project=22)
>  topic(=22my-topic=22)
>  response-action(
>    not-found =3D> disconnect
>    unavailable =3D> drop
>  )
> );
> (=235332)
>         =E2=80=A2 opentelemetry()
>         =E2=80=A2 loki()
>         =E2=80=A2 bigquery()
>         =E2=80=A2 clickhouse()
>         =E2=80=A2 google-pubsub-grpc()
>         =E2=80=A2 ok
>         =E2=80=A2 unavailable
>         =E2=80=A2 cancelled
>         =E2=80=A2 deadline-exceeded
>         =E2=80=A2 aborted
>         =E2=80=A2 out-of-range
>         =E2=80=A2 data-loss
>         =E2=80=A2 unknown
>         =E2=80=A2 invalid-argument
>         =E2=80=A2 not-found
>         =E2=80=A2 already-exists
>         =E2=80=A2 permission-denied
>         =E2=80=A2 unauthenticated
>         =E2=80=A2 failed-precondition
>         =E2=80=A2 unimplemented
>         =E2=80=A2 internal
>         =E2=80=A2 resource-exhausted
>         =E2=80=A2 disconnect
>         =E2=80=A2 drop
>         =E2=80=A2 retry
>         =E2=80=A2 success
>     =E2=80=A2 > s3: Added two new options
> Example:
> s3(
>        url(=22http://localhost:9000=22)
>        bucket(=22testbucket=22)
>        object=5Fkey(=22testobject=22)
>        access=5Fkey(=22<ACCESS=5FKEY=5FID>=22)
>        secret=5Fkey(=22<SECRET=5FACCESS=5FKEY>=22)
>        content=5Ftype(=22text/plain=22)
>        use=5Fchecksum(=22when=5Frequired=22)
> );
> (=235286)
>         =E2=80=A2 content-type(): users now can change the content type=
 of the objects uploaded by syslog-ng.
>         =E2=80=A2 use=5Fchecksum(): This option allows the users to cha=
nge the default checksum settings for
> S3 compatible solutions that don't support checksums. Requires botocore=
 1.36 or above. Acceptable values are
> when=5Fsupported=C2=A0(default) and when=5Frequired.
>     =E2=80=A2 > loki(): Added batch-bytes()=C2=A0and compression()=C2=A0=
options.
> (=235174)
>     =E2=80=A2 > syslog-ng-ctl: =46ormatting the output of the syslog-ng=
-ctl stats=C2=A0and syslog-ng-ctl query=C2=A0commands is unified.
> Both commands got a new --format=C2=A0(-m) argument that can control th=
e output format of the given stat or query. The following formats are sup=
ported:
>         =E2=80=A2 kv=C2=A0- the legacy key-value-pairs e.g. center.queu=
ed.processed=3D0=C2=A0(only for the query=C2=A0command yet)
>         =E2=80=A2 csv=C2=A0- comma separated values e.g. center;;queued=
;a;processed;0
>         =E2=80=A2 prometheus=C2=A0- the prometheus scraper ready format=
 e.g. syslogng=5Fcenter=5Fprocessed=7Bstat=5Finstance=3D=22queued=22=7D 0=

> (=235248)
>     =E2=80=A2 > network(), syslog()=C2=A0sources: add =24PEERIP=C2=A0an=
d =24PEERPORT=C2=A0macros
> The =24PEERIP=C2=A0and =24PEERPORT=C2=A0macros always display the addre=
ss and port of the direct sender.
> In most cases, these values are identical to =24SOURCEIP=C2=A0and =24SO=
URCEPORT.
> However, when dealing with proxied protocols, =24PEERIP=C2=A0and =24PEE=
RPORT=C2=A0reflect the proxy's address and port,
> while =24SOURCEIP=C2=A0and =24SOURCEPORT=C2=A0indicate the original sou=
rce of the message.
> (=235291)
>     =E2=80=A2 > webhook(),opentelemetry()=C2=A0sources: support input=5F=
event=5Fbytes=C2=A0metrics
> (=235324)
>     =E2=80=A2 > freebsd-audit(): added a simple source SCL to collect =46=
reeBSD audit logs using the built-in praudit program
> https://www.syslog-ng.com/community/b/blog/posts/freebsd-audit-source-f=
or-syslog-ng
> (=235383)
>     =E2=80=A2 > webhook(): headers support
> include-request-headers(yes)=C2=A0stores request headers under the =24=7B=
webhook.headers=7D=C2=A0key, allowing further processing
> proxy-header(=22x-forwarded-for=22)=C2=A0helps retain the sender's orig=
inal IP and the proxy's IP address
> (=24SOURCEIP, =24PEERIP).
> (=235333)
>     =E2=80=A2 > check-program: Introduced as a flag for global or sourc=
e options.
> By default, this flag is set to false. Enabling the check-program flag =
triggers program=C2=A0name validation for R=46C3164=C2=A0messages. Valid =
program=C2=A0names must adhere to the following criteria:
> Contain only these characters: =5Ba-zA-Z0-9-=5F/().=5D
> Include at least one alphabetical character.
> If a program=C2=A0name fails validation, it will be considered part of =
the log message.
> Example:
> source =7B network(flags(check-hostname, check-program)); =7D;
> (=235264)
>     =E2=80=A2 > syslog(transport(proxied-*))=C2=A0and network(transport=
(proxied-*)): changed
> where HAProxy transport saved the original source and destination addre=
sses.
> Instead of using dedicated PROXIED=5F*=C2=A0name-value pairs, use the u=
sual
> =24SOURCEIP, =24SOURCEPORT, =24DESTIP=C2=A0and =24DESTPORT=C2=A0macros,=
 making haproxy
> based connections just like native ones.
> =24SOURCEPORT: added new macro which expands to the source port of the =
peer.
> (=235305)
>     =E2=80=A2 > opentelemetry(), syslog-ng-otlp(): Added keep-alive()=C2=
=A0options.
> Keepalive can be configured with the time(), timeout()
> and max-pings-without-data()=C2=A0options of the keep-alive()=C2=A0bloc=
k.
> opentelemetry(
>    ...
>    keep-alive(time(20000) timeout(10000) max-pings-without-data(0))
> );
> (=235174)
>     =E2=80=A2 > bigquery(): Added auth()=C2=A0options.
> Similarly to other gRPC based destination drivers, the bigquery()
> destination now accepts different authentication methods, like
> adc(), alts(), insecure()=C2=A0and tls().
> bigquery (
>    ...
>    auth(
>        tls(
>            ca-file(=22/path/to/ca.pem=22)
>            key-file(=22/path/to/key.pem=22)
>            cert-file(=22/path/to/cert.pem=22)
>        )
>    )
> );
> (=235174)
>     =E2=80=A2 > cloud-auth: Added azure-monitor()=C2=A0destination
> Added oauth2 authentication for azure monitor destinations.
> Example usage:
> azure-monitor(
>     dcr-id(=22dcr id=22)
>     dce-uri(=22dce uri=22)
>     stream=5Fname(=22stream name=22)
>     auth(
>          tenant-id(=22tenant id=22)
>          app-id(=22app id=22)
>          app-secret(=22app secret=22)
>     )
> )
> (=235293)
>     =E2=80=A2 > multi-line-mode(): Added a new mutiline detection mode =
empty-line-separated=C2=A0that, as its name suggests, reads and treats al=
l messages as one till it receives an empty line (which contains only a =5C=
r, =5Cn=C2=A0or =5Cr=5Cn=C2=A0sequence).
> (=235259)
>     =E2=80=A2 > google-pubsub-grpc(): Added a new destination that send=
s logs to Google Pub/Sub via the gRPC interface.
> Example config:
> google-pubsub-grpc(
>  project(=22my=5Fproject=22)
>  topic(=24topic)
>
>  data(=24MESSAGE)
>  attributes(
>    timestamp =3D> =24S=5FISODATE,
>    host =3D> =24HOST,
>  )
>
>  workers(4)
>  batch-timeout(1000) =23 ms
>  batch-lines(1000)
> );
> The project()=C2=A0and topic()=C2=A0options are templatable.
> The default service endpoint can be changed with the service=5Fendpoint=
()=C2=A0option.
> (=235266)
>     =E2=80=A2 > ivykis: We have switched to our own fork=C2=A0of ivykis=
 as the source for builds when using syslog-ng=E2=80=99s internal ivykis =
option (--with-ivykis=3Dinternal=C2=A0in autotools or -DIVYKIS=5FSOURCE=3D=
internal=C2=A0in CMake).
> We recommend switching to this internal version, as it includes new fea=
tures not available in the original version=C2=A0and likely never will be=
.
> (=235307)
>     =E2=80=A2 > ivykis: =46ixed and merged the in development phase io=5F=
uring=C2=A0based polling method solution to our ivykis fork.
> This is am experimental integration and not selected by default, you mu=
st activate it directly either using the IV=5FEXCLUDE=5FPOLL=5FMETHOD=C2=A0=
or IV=5FSELECT=5FPOLL=5FMETHOD=C2=A0as described here.
> (=235312)
>     =E2=80=A2 > file(), wildcard-file(): Added follow-method()=C2=A0opt=
ion.
> =7CAccepted values:=7C legacy =7C inotify =7C poll =7C system =7C
> This option controls how syslog-ng will follow file changes.
> The default legacy=C2=A0mode preserves the pre-4.9 version file follow-=
mode behavior of syslog-ng, which is based on the value of follow-freq().=

> The poll=C2=A0value forces syslog-ng to poll for file changes at the in=
terval specified by the monitor-freq() option, even if a more efficient m=
ethod (such as inotify=C2=A0or kqueue) is available.
> If inotify=C2=A0is selected and supported by the platform, syslog-ng us=
es it to detect changes in source files. This is the most efficient and l=
east resource-consuming option available on Linux for regular files.
> The system=C2=A0value will use system poll methods (via ivykis) like po=
rt-timer port dev=5Fpoll epoll-timerfd epoll kqueue ppoll poll=C2=A0and u=
ring. =46or more information about how to control the system polling meth=
ods used, see How content changes are followed in file() and wildcard-fil=
e() sources.
> (=235338)
>     =E2=80=A2 > opentelemetry(), loki()=C2=A0destination: Add support f=
or templated header()=C2=A0values
> (=235184)
> Bugfixes
>     =E2=80=A2 > syslog-ng-otlp()=C2=A0destination: =46ixed a crash.
> (=235267)
>     =E2=80=A2 > =46ixed some time parsing and time formatting issues.
> (=235386)
>     =E2=80=A2 > syslogformat: =46ix integer overflow on set pri
> (=235254)
>     =E2=80=A2 > network(), syslog(): =46ixed a potential crash for TLS =
destinations during reload
> In case of a TLS connection, if the handshake didn't happen before relo=
ading syslog-ng,
> it crashed on the first message sent to that destination.
> (=235303)
>     =E2=80=A2 > collectd(): fix not reading server responses
> (=235390)
>     =E2=80=A2 > metrics: syslog-ng-ctl --reset=C2=A0will no longer rese=
t Prometheus metrics
> (=235261)
>     =E2=80=A2 > rate-limit(): fix precision issue that could occur at a=
 very low message rate
> (=235346)
>     =E2=80=A2 > network(), syslog()=C2=A0sources and destinations: fix =
TCP/TLS shutdown
> (=235271)
>     =E2=80=A2 > http: =46ixed a batching related bug that happened with=
 templated URLs and a single worker.
> (=235281)
>     =E2=80=A2 > network(), syslog()=C2=A0destinations: handle async TLS=
 messages (KeyUpdate, etc.)
> (=235390)
> Notes to developers
>     =E2=80=A2 editorconfig: configure supported editors for the project=
's style
> (=235331)
> Other changes
>     =E2=80=A2 > java-modules: Upgrade java common=C2=A0and hdfs=C2=A0de=
pendencies.
> (=235366)
>     =E2=80=A2 > java-modules: Remove depricated java destinations: elas=
ticsearch2, kafka-java=C2=A0and the java-http.
> The following destinations can be used instead:
>         =E2=80=A2 elasticsearch2=C2=A0- Both elastic-datastream()=C2=A0=
or the elastic-http()=C2=A0can be used.
>         =E2=80=A2 kafka-java=C2=A0- The C based kafka-c()=C2=A0destinat=
ion can be used instead. To help with migration check out the Shifting fr=
om Java implementation to C implementation=C2=A0page.
>         =E2=80=A2 java-http=C2=A0- the C based http()=C2=A0destination =
can be used.
> (=235366)
> Credits
> syslog-ng is developed as a community project, and as such it relies
> on volunteers, to do the work necessarily to produce syslog-ng.
> Reporting bugs, testing changes, writing code or simply providing
> feedback are all important contributions, so please if you are a user
> of syslog-ng, contribute.
> We would like to thank the following people for their contribution:
> Alex Becker, Attila Szakacs, Balazs Scheidler, B=C3=A1lint Horv=C3=A1th=
,
> David Mandelberg, Eli Schwartz, Hofi, Kov=C3=A1cs Gerg=C3=B5 =46erenc,
> L=C3=A1szl=C3=B3 V=C3=A1rady, Peter Czanik (CzP), Petr Vaganov,
> Shiraz, Szilard Parrag, Tamas Pal, Tam=C3=A1s Kosztyu, shifter
>
>
> Peter Czanik (CzP) <peter.czanik=40oneidentity.com>
> Balabit (a OneIdentity company) / syslog-ng upstream
> https://syslog-ng.com/community/
> https://twitter.com/PCzanik
>
>
> =5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=
=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=
=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=
=5F=5F=5F=5F
> Member info: https://lists.balabit.hu/mailman/listinfo/syslog-ng
> Documentation: http://www.balabit.com/support/documentation/=3Fproduct=3D=
syslog-ng
> =46AQ: http://www.balabit.com/wiki/syslog-ng-faq
>
> =5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=
=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=
=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=
=5F=5F=5F=5F
> Member info: %(web=5Fpage=5Furl)slistinfo/%(=5Finternal=5Fname)s
> Documentation: http://www.balabit.com/support/documentation/=3Fproduct=3D=
syslog-ng
> =46AQ: http://www.balabit.com/wiki/syslog-ng-faq
>
>

--68ada090_77465f01_205d
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

<html xmlns=3D=22http://www.w3.org/1999/xhtml=22>
<head>
<title></title>
</head>
<body>
<div name=3D=22messageBodySection=22>
<div dir=3D=22auto=22>ah, kozben meglett<br />
<a href=3D=22https://github.com/syslog-ng/syslog-ng/pull/5441=22 target=3D=
=22=5Fblank=22>https://github.com/syslog-ng/syslog-ng/pull/5441</a><br />=

<br />
koszi a jelzest=21<br />
udv</div>
</div>
<div name=3D=22messageSignatureSection=22><br />
<div class=3D=22match=46ont=22>=E2=80=94=E2=80=94=E2=80=94=E2=80=94=E2=80=
=94=E2=80=94=E2=80=94=E2=80=94=E2=80=94=E2=80=94=E2=80=94=E2=80=94=E2=80=94=
=E2=80=94=E2=80=94=E2=80=94=E2=80=94
<div dir=3D=22auto=22>Hoffmann Istvan</div>
</div>
</div>
<div name=3D=22messageReplySection=22>On Aug 25, 2025 at 11:16 +0200, Pet=
er Czanik (pczanik) &lt;Peter.Czanik=40oneidentity.com&gt;, wrote:<br />
<blockquote type=3D=22cite=22 style=3D=22border-left-color: grey; border-=
left-width: thin; border-left-style: solid; margin: 5px 5px;padding-left:=
 10px;=22>
<div style=3D=22font-family: Aptos, Aptos=5FEmbedded=46ont, Aptos=5FMS=46=
ontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0=
, 0, 0);=22 class=3D=22elementToProof=22>Hi Gyula,</div>
<div style=3D=22font-family: Aptos, Aptos=5FEmbedded=46ont, Aptos=5FMS=46=
ontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0=
, 0, 0);=22 class=3D=22elementToProof=22><br /></div>
<div style=3D=22font-family: Aptos, Aptos=5FEmbedded=46ont, Aptos=5FMS=46=
ontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0=
, 0, 0);=22 class=3D=22elementToProof=22>Thanks for the report=21 I talke=
d to the developer, who worked on it, and it is not a known issue. Please=
 open a GitHub issue at <a href=3D=22https://github.com/syslog-ng/syslog-=
ng/issues/=22>https://github.com/syslog-ng/syslog-ng/issues/</a>&=23160;f=
or easier tracking, and also attach a minimal configuration to reproduce =
the problem, together with some information about your environment (numbe=
r of log source hosts, message rate, etc.).</div>
<div style=3D=22font-family: Aptos, Aptos=5FEmbedded=46ont, Aptos=5FMS=46=
ontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0=
, 0, 0);=22 class=3D=22elementToProof=22><br /></div>
<div style=3D=22font-family: Aptos, Aptos=5FEmbedded=46ont, Aptos=5FMS=46=
ontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0=
, 0, 0);=22 class=3D=22elementToProof=22>Thanks,</div>
<div style=3D=22font-family: Aptos, Aptos=5FEmbedded=46ont, Aptos=5FMS=46=
ontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0=
, 0, 0);=22 class=3D=22elementToProof=22>Peter</div>
<div class=3D=22elementToProof=22 id=3D=22Signature=22>
<div style=3D=22font-family: Aptos, Aptos=5FEmbedded=46ont, Aptos=5FMS=46=
ontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0=
, 0, 0);=22 class=3D=22elementToProof=22><br /></div>
<div class=3D=22elementToProof=22 style=3D=22direction: ltr; font-family:=
 Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0,=
 0);=22>Peter Czanik (CzP) &lt;peter.czanik=40oneidentity.com&gt;<br />
Balabit (a OneIdentity company) / syslog-ng upstream<br />
<a target=3D=22=5Fblank=22 href=3D=22https://syslog-ng.com/community/=22>=
https://syslog-ng.com/<wbr />community/</a><br />
<a target=3D=22=5Fblank=22 href=3D=22https://twitter.com/PCzanik=22>https=
://twitter.com/PCzanik</a></div>
<div style=3D=22font-family: Calibri, Arial, Helvetica, sans-serif; font-=
size: 12pt; color: rgb(0, 0, 0);=22 class=3D=22elementToProof=22><br /></=
div>
</div>
<div id=3D=22appendonsend=22></div>
<hr style=3D=22display:inline-block;width:98%=22 tabindex=3D=22-1=22 />
<div id=3D=22divRply=46wdMsg=22 dir=3D=22ltr=22><font face=3D=22Calibri, =
sans-serif=22 style=3D=22font-size:11pt=22 color=3D=22=23000000=22><b>=46=
rom:</b> Kerekes Gyula &lt;gyula=40harcinyul.hu&gt;<br />
<b>Sent:</b> =46riday, August 22, 2025 10:35<br />
<b>To:</b> syslog-ng=40lists.balabit.hu &lt;syslog-ng=40lists.balabit.hu&=
gt;<br />
<b>Subject:</b> =5Bsyslog-ng=5DRe: syslog-ng version 4.9.0 is now availab=
le</font>
<div>&=23160;</div>
</div>
<div>
<div style=3D=22background-color:=23=46=46EB9C; width:100%; border-style:=
solid; border-color:=239C6500; border-width:1pt; padding:2pt; font-size:1=
0pt; line-height:12pt; font-family:'Calibri'; color:Black; text-align:lef=
t=22><span style=3D=22color:=239C6500; font-weight:bold=22>CAUTION:</span=
> This email originated from outside of the organization. Do not follow g=
uidance, click links, or open attachments unless you recognize the sender=
 and know the content is safe.</div>
<br />
<div>
<p>Hi,<br />
<br />
<br />
I tried this stats exporter-dont-log() feature and it works well but it s=
eems like it has a mem leak somewhere. I tried to switch off the promethe=
us data collection to one of the syslog-ng hosts and the mem consumption =
stayed fairly low. On the other hand all the others used 1-2 gigs of RSS =
mem. Is it a known issue=3F<br /></p>
<p><br /></p>
<p>Gyula</p>
<p><br /></p>
<div class=3D=22x=5Fmoz-cite-prefix=22>2025. 07. 17. 15:19 keltez=C3=A9ss=
el, Peter Czanik (pczanik) =C3=ADrta:<br /></div>
<blockquote type=3D=22cite=22>
<style type=3D=22text/css=22 style=3D=22display:none=22>
/*<=21=5BCDATA=5B*/
<=21--
p
        =7Bmargin-top:0;
        margin-bottom:0=7D
-->
/*=5D=5D>*/
</style>
<div class=3D=22x=5FelementToProof=22 style=3D=22font-family:Aptos,&quot;=
Aptos=5FEmbedded=46ont&quot;,&quot;Aptos=5FMS=46ontService&quot;,Calibri,=
Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)=22>Hi,</div>
<div class=3D=22x=5FelementToProof=22 style=3D=22font-family:Aptos,&quot;=
Aptos=5FEmbedded=46ont&quot;,&quot;Aptos=5FMS=46ontService&quot;,Calibri,=
Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)=22><br /></div>
<div class=3D=22x=5FelementToProof=22 style=3D=22font-family:Aptos,&quot;=
Aptos=5FEmbedded=46ont&quot;,&quot;Aptos=5FMS=46ontService&quot;,Calibri,=
Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)=22>I am happy to a=
nnounce that version 4.9.0 of syslog-ng is now available. Thanks everyone=
 who contributed code, documentation, testing, or in any other way.</div>=

<div class=3D=22x=5FelementToProof=22 style=3D=22font-family:Aptos,&quot;=
Aptos=5FEmbedded=46ont&quot;,&quot;Aptos=5FMS=46ontService&quot;,Calibri,=
Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)=22><br /></div>
<div class=3D=22x=5FelementToProof=22 style=3D=22font-family:Aptos,&quot;=
Aptos=5FEmbedded=46ont&quot;,&quot;Aptos=5FMS=46ontService&quot;,Calibri,=
Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)=22>Peter</div>
<div class=3D=22x=5FelementToProof=22 style=3D=22font-family:Aptos,&quot;=
Aptos=5FEmbedded=46ont&quot;,&quot;Aptos=5FMS=46ontService&quot;,Calibri,=
Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)=22><br /></div>
<div class=3D=22x=5FelementToProof=22 style=3D=22font-family:Aptos,&quot;=
Aptos=5FEmbedded=46ont&quot;,&quot;Aptos=5FMS=46ontService&quot;,Calibri,=
Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)=22><b>4.9.0</b></d=
iv>
<div class=3D=22x=5FelementToProof=22 style=3D=22font-family:Aptos,&quot;=
Aptos=5FEmbedded=46ont&quot;,&quot;Aptos=5FMS=46ontService&quot;,Calibri,=
Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)=22><b>Highlights</=
b></div>
<ul>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>stats-exporter</code>: Added two new sources, <code>stats-exp=
orter()</code>&=23160;and <code>stats-exporter-dont-log()</code>, which d=
irectly serve the output of <code>syslog-ng-ctl stats</code>&=23160;and <=
code>syslog-ng-ctl query</code>&=23160;to a http scraper. The only differ=
ence is that <code>stats-exporter-dont-log()</code>&=23160;suppresses log=
 messages from incoming scraper requests, ensuring no messages appear in =
the log path. Meanwhile, <code>stats-exporter()</code>&=23160;logs unpars=
ed messages, storing incoming scraper HTTP requests in the <code>MSG</cod=
e>&=23160;field.</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>Example usage for a Prometheus Scraper which logs the HTTP request =
of the scraper to /var/log/scraper.log:</div>
<pre role=3D=22presentation=22><code>=40version: 4.9
=40include =22scl.conf=22

source s=5Fprometheus=5Fstat =7B
    stats-exporter(
        ip(=220.0.0.0=22)
        port(8080)
        stat-type(=22query=22)
        stat-query(=22*=22)
        scrape-freq-limit(30)
        single-instance(yes)
    );
=7D;

log =7B
    source(s=5Fprometheus=5Fstat);
    destination =7B file(/var/log/scraper.log); =7D;
=7D;
</code></pre></li>
</ul>
</blockquote>
</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>Example usage for a generic HTTP Scraper which sends e.g. the <code=
>GET /stats HTTP/1.1</code> HTTP request to get statistics of syslog-ng, =
do not want to log or further process the HTTP requests in the log pipe, =
and needs the response in CSV format:</div>
<pre role=3D=22presentation=22><code>=40version: 4.9
=40include =22scl.conf=22

source s=5Fscraper=5Fstat =7B
    stats-exporter-dont-log(
        ip(=220.0.0.0=22)
        port(8080)
        stat-type(=22stats=22)
        stat-format(=22csv=22)
        scrape-pattern(=22GET /stats*=22)
        scrape-freq-limit(30)
        single-instance(yes)
    );
=7D;

log =7B
    source(s=5Fscraper=5Fstat);
=7D;
</code></pre></div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>Note: A destination is not required for this to work; the <code>sta=
ts-exporter()</code>&=23160;source will respond to the scraper regardless=
 of whether a destination is present in the log path.</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>Available options:</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>stat-type(string)</code>&=23160;- <code>query</code>&=23160;o=
r <code>stats</code>, just like for the <code>syslog-ng-ctl</code>&=23160=
;command line tool, see there for the details<br />
<code>stat-query(string)</code>&=23160;- the query regex string that can =
be used to filter the output of a <code>query</code>&=23160;type request<=
br />
<code>stat-format(string)</code>&=23160;- the output format of the given =
stats request, like the <code>-m</code>&=23160;option of the <code>syslog=
-ng-ctl</code>&=23160;command line tool<br />
<code>scrape-pattern(string)</code>&=23160;=E2=80=93 the pattern used to =
match the HTTP header of incoming scraping requests. A stat response will=
 be generated and sent only if the header matches the pattern string<br /=
>
<code>scrape-freq-limit(non-negative-int)</code>&=23160;- limits the freq=
uency of repeated scraper requests to the specified number of seconds. An=
y repeated request within this period will be ignored. A value of 0 means=
 no limit<br />
<code>single-instance(yes/no)</code>&=23160;- if set to <code>yes</code>&=
=23160;only one scraper connection and request will be allowed at once<br=
 />
(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=22/s=
yslog-ng/syslog-ng/pull/5259/hovercard=22 class=3D=22x=5FOWAAutoLink=22 i=
d=3D=22OWA914d3223-3ae6-fcea-2932-f914391330d7=22 href=3D=22https://githu=
b.com/syslog-ng/syslog-ng/pull/5259=22 originalsrc=3D=22https://github.co=
m/syslog-ng/syslog-ng/pull/5259=22>=235259</a>)</div>
<ul>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>syslog()</code>&=23160;source driver: add support for R=46C65=
87 style auto-detection of<br />
octet-count based framing to avoid confusion that stems from the sender<b=
r />
using a different protocol to the server. This behaviour can be enabled<b=
r />
by using <code>transport(auto)</code>&=23160;option for the <code>syslog(=
)</code>&=23160;source.<br />
(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=22/s=
yslog-ng/syslog-ng/pull/5322/hovercard=22 class=3D=22x=5FOWAAutoLink=22 i=
d=3D=22OWAea867262-821a-c94b-9a2a-db360bcd9f40=22 href=3D=22https://githu=
b.com/syslog-ng/syslog-ng/pull/5322=22 originalsrc=3D=22https://github.co=
m/syslog-ng/syslog-ng/pull/5322=22>=235322</a>)</div>
</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>wildcard-file</code>: Added inotify-based regular file change=
 detection using the existing inotify-based directory monitor.</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>This improves efficiency on OSes like Linux, where only polling was=
 available before, significantly reducing CPU usage while enhancing chang=
e detection accuracy.</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>To enable this feature, inotify kernel support is required, along w=
ith <code>monitor-method()</code>&=23160;set to <code>inotify</code>&=231=
60;or <code>auto</code>, and <code>follow-freq()</code>&=23160;set to 0.<=
br />
(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=22/s=
yslog-ng/syslog-ng/pull/5315/hovercard=22 class=3D=22x=5FOWAAutoLink=22 i=
d=3D=22OWAf2e3137f-1c1d-b053-15c8-b08cece13990=22 href=3D=22https://githu=
b.com/syslog-ng/syslog-ng/pull/5315=22 originalsrc=3D=22https://github.co=
m/syslog-ng/syslog-ng/pull/5315=22>=235315</a>)</div>
</li>
<div class=3D=22x=5FelementToProof=22 style=3D=22font-family:Aptos,&quot;=
Aptos=5FEmbedded=46ont&quot;,&quot;Aptos=5FMS=46ontService&quot;,Calibri,=
Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)=22><b>=46eatures</=
b></div>
<ul>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>cisco</code>: Added support for Cisco Nexus NXOS 9.3 syslog f=
ormat.</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>The parser now recognises NXOS 9.3 timestamps in <code>YYYY MMM DD =
HH:MM:SS</code>&=23160;format and handles the different<br />
sequence number prefix (<code>:</code> instead of <code>seqno:</code> ) u=
sed by NXOS 9.3 compared to traditional IOS formats.</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>Example Cisco configuration:</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>Example syslog-ng configuration:</div>
<pre role=3D=22presentation=22><code>=40include =22scl.conf=22

source s=5Fcisco =7B
    network(ip(0.0.0.0) transport(=22udp=22) port(2000) flags(no-parse));=

=7D;

parser p=5Fcisco =7B
    cisco-parser();
=7D;

destination d=5Fplaceholder =7B
    =23 Define your destination here
=7D;

log =7B
    source(s=5Fcisco);
    parser(p=5Fcisco);
    destination(d=5Fplaceholder);
=7D;
</code></pre>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>(<a data-hovercard-type=3D=22issue=22 data-hovercard-url=3D=22/sysl=
og-ng/syslog-ng/issues/5412/hovercard=22 class=3D=22x=5FOWAAutoLink=22 id=
=3D=22OWAce240cde-6385-28e9-3603-e247f105acfb=22 href=3D=22https://github=
.com/syslog-ng/syslog-ng/pull/5412=22 originalsrc=3D=22https://github.com=
/syslog-ng/syslog-ng/pull/5412=22>=235412</a>)</div>
</li>
<ul>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>NXOS: <code>(config)=23 logging server &lt;syslog=
-ng-server-ip&gt; port 2000</code></li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>IOS: <code>(config)=23 logging host &lt;syslog-ng=
-server-ip&gt; transport udp port 2000</code></li>
</ul>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>bigquery(), google-pubsub-grpc(): Added service-account() authentic=
ation option.</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>Example usage:</div>
<pre role=3D=22presentation=22><code>destination =7B
    google-pubsub-grpc(
        project(=22test=22)
        topic(=22test=22)
        auth(service-account(key (=22path=5Fto=5Fservice=5Faccount=5Fkey.=
json=22)))
    );
=7D;
</code></pre>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>Note: In contrary to the <code>http()</code>&=23160;destination's s=
imilar option,<br />
we do not need to manually set the audience here as it is<br />
automatically recognized by the underlying gRPC API.<br />
(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=22/s=
yslog-ng/syslog-ng/pull/5270/hovercard=22 class=3D=22x=5FOWAAutoLink=22 i=
d=3D=22OWA9ecdd0ae-5380-241a-436a-d3608224e8bd=22 href=3D=22https://githu=
b.com/syslog-ng/syslog-ng/pull/5270=22 originalsrc=3D=22https://github.co=
m/syslog-ng/syslog-ng/pull/5270=22>=235270</a>)</div>
</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>gRPC based destinations: Added <code>response-action()</code>&=2316=
0;option</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>With this option, it is possible to fine tune how syslog-ng<br />
behaves in case of different gRPC results.</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>Supported by the following destination drivers:</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>Supported gRPC results:</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>Supported actions:</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>Usage:</div>
<pre role=3D=22presentation=22><code>google-pubsub-grpc(
  project(=22my-project=22)
  topic(=22my-topic=22)
  response-action(
    not-found =3D&gt; disconnect
    unavailable =3D&gt; drop
  )
);
</code></pre>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=
=22/syslog-ng/syslog-ng/pull/5332/hovercard=22 class=3D=22x=5FOWAAutoLink=
=22 id=3D=22OWAda4d7b0b-c979-f5bb-42fd-256728865238=22 href=3D=22https://=
github.com/syslog-ng/syslog-ng/pull/5332=22 originalsrc=3D=22https://gith=
ub.com/syslog-ng/syslog-ng/pull/5332=22>=235332</a>)</div>
</li>
<ul>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22><code>opentelemetry()</code></li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22><code>loki()</code></li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22><code>bigquery()</code></li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22><code>clickhouse()</code></li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22><code>google-pubsub-grpc()</code></li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>ok</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>unavailable</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>cancelled</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>deadline-exceeded</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>aborted</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>out-of-range</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>data-loss</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>unknown</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>invalid-argument</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>not-found</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>already-exists</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>permission-denied</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>unauthenticated</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>failed-precondition</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>unimplemented</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>internal</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>resource-exhausted</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>disconnect</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>drop</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>retry</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>success</li>
</ul>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>s3</code>: Added two new options</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>Example:</div>
<pre role=3D=22presentation=22><code>s3(
        url(<a class=3D=22x=5Fmoz-txt-link-rfc2396E=22 href=3D=22http://l=
ocalhost:9000=22>=22http://localhost:9000=22</a>)
        bucket(=22testbucket=22)
        object=5Fkey(=22testobject=22)
        access=5Fkey(=22&lt;ACCESS=5FKEY=5FID&gt;=22)
        secret=5Fkey(=22&lt;SECRET=5FACCESS=5FKEY&gt;=22)
        content=5Ftype(=22text/plain=22)
        use=5Fchecksum(=22when=5Frequired=22)
);
</code></pre>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=
=22/syslog-ng/syslog-ng/pull/5286/hovercard=22 class=3D=22x=5FOWAAutoLink=
=22 id=3D=22OWA36d4dc80-2ae4-5db6-0688-af2fba204ff7=22 href=3D=22https://=
github.com/syslog-ng/syslog-ng/pull/5286=22 originalsrc=3D=22https://gith=
ub.com/syslog-ng/syslog-ng/pull/5286=22>=235286</a>)</div>
</li>
<ul>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22><code>content-type()</code>: users now can change=
 the content type of the objects uploaded by syslog-ng.</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22><code>use=5Fchecksum()</code>: This option allows=
 the users to change the default checksum settings for<br />
S3 compatible solutions that don't support checksums. Requires botocore 1=
.36 or above. Acceptable values are<br />
<code>when=5Fsupported</code>&=23160;(default) and <code>when=5Frequired<=
/code>.</li>
</ul>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>loki()</code>: Added <code>batch-bytes()</code>&=23160;and <c=
ode>compression()</code>&=23160;options.<br />
(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=22/s=
yslog-ng/syslog-ng/pull/5174/hovercard=22 class=3D=22x=5FOWAAutoLink=22 i=
d=3D=22OWAc2aab7f1-dea2-9fea-a087-092c601ca57c=22 href=3D=22https://githu=
b.com/syslog-ng/syslog-ng/pull/5174=22 originalsrc=3D=22https://github.co=
m/syslog-ng/syslog-ng/pull/5174=22>=235174</a>)</div>
</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>syslog-ng-ctl</code>: =46ormatting the output of the <code>sy=
slog-ng-ctl stats</code>&=23160;and <code>syslog-ng-ctl query</code>&=231=
60;commands is unified.</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>Both commands got a new <code>--format</code>&=23160;(<code>-m</cod=
e>) argument that can control the output format of the given stat or quer=
y. The following formats are supported:</div>
</li>
<ul>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22><code>kv</code>&=23160;- the legacy key-value-pai=
rs e.g. <code>center.queued.processed=3D0</code>&=23160;(only for the <co=
de>query</code>&=23160;command yet)</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22><code>csv</code>&=23160;- comma separated values =
e.g. <code>center;;queued;a;processed;0</code></li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22><code>prometheus</code>&=23160;- the prometheus s=
craper ready format e.g. <code>syslogng=5Fcenter=5Fprocessed=7Bstat=5Fins=
tance=3D=22queued=22=7D 0</code><br />
(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=22/s=
yslog-ng/syslog-ng/pull/5248/hovercard=22 class=3D=22x=5FOWAAutoLink=22 i=
d=3D=22OWA40f2909f-74ff-4255-2acd-5337a0d4fbcc=22 href=3D=22https://githu=
b.com/syslog-ng/syslog-ng/pull/5248=22 originalsrc=3D=22https://github.co=
m/syslog-ng/syslog-ng/pull/5248=22>=235248</a>)</li>
</ul>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>network()</code>, <code>syslog()</code>&=23160;sources: add <=
code>=24PEERIP</code>&=23160;and <code>=24PEERPORT</code>&=23160;macros</=
div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>The <code>=24PEERIP</code>&=23160;and <code>=24PEERPORT</code>&=231=
60;macros always display the address and port of the direct sender.<br />=

In most cases, these values are identical to <code>=24SOURCEIP</code>&=23=
160;and <code>=24SOURCEPORT</code>.<br />
However, when dealing with proxied protocols, <code>=24PEERIP</code>&=231=
60;and <code>=24PEERPORT</code>&=23160;reflect the proxy's address and po=
rt,<br />
while <code>=24SOURCEIP</code>&=23160;and <code>=24SOURCEPORT</code>&=231=
60;indicate the original source of the message.<br />
(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=22/s=
yslog-ng/syslog-ng/pull/5291/hovercard=22 class=3D=22x=5FOWAAutoLink=22 i=
d=3D=22OWAf289299f-d5ee-1a5d-5798-3ee6cb861747=22 href=3D=22https://githu=
b.com/syslog-ng/syslog-ng/pull/5291=22 originalsrc=3D=22https://github.co=
m/syslog-ng/syslog-ng/pull/5291=22>=235291</a>)</div>
</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>webhook()</code>,<code>opentelemetry()</code>&=23160;sources:=
 support <code>input=5Fevent=5Fbytes</code>&=23160;metrics<br />
(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=22/s=
yslog-ng/syslog-ng/pull/5324/hovercard=22 class=3D=22x=5FOWAAutoLink=22 i=
d=3D=22OWAc63b47c5-3ed2-0498-51ed-380492b9d534=22 href=3D=22https://githu=
b.com/syslog-ng/syslog-ng/pull/5324=22 originalsrc=3D=22https://github.co=
m/syslog-ng/syslog-ng/pull/5324=22>=235324</a>)</div>
</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>freebsd-audit()</code>: added a simple source SCL to collect =
=46reeBSD audit logs using the built-in praudit program</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><a rel=3D=22nofollow=22 class=3D=22x=5FOWAAutoLink x=5Fmoz-txt-link=
-freetext=22 id=3D=22OWAdcb71d5a-e054-0dc7-effc-da62fe16a5fd=22 href=3D=22=
https://www.syslog-ng.com/community/b/blog/posts/freebsd-audit-source-for=
-syslog-ng=22 originalsrc=3D=22https://www.syslog-ng.com/community/b/blog=
/posts/freebsd-audit-source-for-syslog-ng=22>https://www.syslog-ng.com/co=
mmunity/b/blog/posts/freebsd-audit-source-for-syslog-ng</a><br />
(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=22/s=
yslog-ng/syslog-ng/pull/5383/hovercard=22 class=3D=22x=5FOWAAutoLink=22 i=
d=3D=22OWA08390551-c338-0ea4-30a8-f4e9607cd718=22 href=3D=22https://githu=
b.com/syslog-ng/syslog-ng/pull/5383=22 originalsrc=3D=22https://github.co=
m/syslog-ng/syslog-ng/pull/5383=22>=235383</a>)</div>
</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>webhook()</code>: headers support</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>include-request-headers(yes)</code>&=23160;stores request hea=
ders under the <code>=24=7Bwebhook.headers=7D</code>&=23160;key, allowing=
 further processing</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>proxy-header(=22x-forwarded-for=22)</code>&=23160;helps retai=
n the sender's original IP and the proxy's IP address</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>(<code>=24SOURCEIP</code>, <code>=24PEERIP</code>).<br />
(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=22/s=
yslog-ng/syslog-ng/pull/5333/hovercard=22 class=3D=22x=5FOWAAutoLink=22 i=
d=3D=22OWAab2a3357-e1e6-304c-1f2c-4d81e00b1bc8=22 href=3D=22https://githu=
b.com/syslog-ng/syslog-ng/pull/5333=22 originalsrc=3D=22https://github.co=
m/syslog-ng/syslog-ng/pull/5333=22>=235333</a>)</div>
</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>check-program</code>: Introduced as a flag for global or sour=
ce options.</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>By default, this flag is set to false. Enabling the check-program f=
lag triggers <code>program</code>&=23160;name validation for <code>R=46C3=
164</code>&=23160;messages. Valid <code>program</code>&=23160;names must =
adhere to the following criteria:</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>Contain only these characters: <code>=5Ba-zA-Z0-9-=5F/().=5D</code>=
<br />
Include at least one alphabetical character.<br />
If a <code>program</code>&=23160;name fails validation, it will be consid=
ered part of the log message.</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>Example:</div>
<pre role=3D=22presentation=22><code>source =7B network(flags(check-hostn=
ame, check-program)); =7D;
</code></pre>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=
=22/syslog-ng/syslog-ng/pull/5264/hovercard=22 class=3D=22x=5FOWAAutoLink=
=22 id=3D=22OWA91019089-851a-ccd3-756d-c50861e356a9=22 href=3D=22https://=
github.com/syslog-ng/syslog-ng/pull/5264=22 originalsrc=3D=22https://gith=
ub.com/syslog-ng/syslog-ng/pull/5264=22>=235264</a>)</div>
</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>syslog(transport(proxied-*))</code>&=23160;and <code>network(=
transport(proxied-*))</code>: changed<br />
where HAProxy transport saved the original source and destination address=
es.<br />
Instead of using dedicated <code>PROXIED=5F*</code>&=23160;name-value pai=
rs, use the usual<br />
<code>=24SOURCEIP</code>, <code>=24SOURCEPORT</code>, <code>=24DESTIP</co=
de>&=23160;and <code>=24DESTPORT</code>&=23160;macros, making haproxy<br =
/>
based connections just like native ones.</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>=24SOURCEPORT</code>: added new macro which expands to the so=
urce port of the peer.<br />
(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=22/s=
yslog-ng/syslog-ng/pull/5305/hovercard=22 class=3D=22x=5FOWAAutoLink=22 i=
d=3D=22OWA62b757c9-75bc-823c-cc7c-c43c31a3023f=22 href=3D=22https://githu=
b.com/syslog-ng/syslog-ng/pull/5305=22 originalsrc=3D=22https://github.co=
m/syslog-ng/syslog-ng/pull/5305=22>=235305</a>)</div>
</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>opentelemetry()</code>, <code>syslog-ng-otlp()</code>: Added =
<code>keep-alive()</code>&=23160;options.</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>Keepalive can be configured with the <code>time()</code>, <code>tim=
eout()</code><br />
and <code>max-pings-without-data()</code>&=23160;options of the <code>kee=
p-alive()</code>&=23160;block.</div>
<pre role=3D=22presentation=22><code>opentelemetry(
    ...
    keep-alive(time(20000) timeout(10000) max-pings-without-data(0))
);
</code></pre>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=
=22/syslog-ng/syslog-ng/pull/5174/hovercard=22 class=3D=22x=5FOWAAutoLink=
=22 id=3D=22OWAba20a04c-8b7e-10aa-8396-01f29e028d65=22 href=3D=22https://=
github.com/syslog-ng/syslog-ng/pull/5174=22 originalsrc=3D=22https://gith=
ub.com/syslog-ng/syslog-ng/pull/5174=22>=235174</a>)</div>
</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>bigquery()</code>: Added <code>auth()</code>&=23160;options.<=
/div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>Similarly to other gRPC based destination drivers, the <code>bigque=
ry()</code><br />
destination now accepts different authentication methods, like<br />
<code>adc()</code>, <code>alts()</code>, <code>insecure()</code>&=23160;a=
nd <code>tls()</code>.</div>
<pre role=3D=22presentation=22><code>bigquery (
    ...
    auth(
        tls(
            ca-file(=22/path/to/ca.pem=22)
            key-file(=22/path/to/key.pem=22)
            cert-file(=22/path/to/cert.pem=22)
        )
    )
);
</code></pre>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=
=22/syslog-ng/syslog-ng/pull/5174/hovercard=22 class=3D=22x=5FOWAAutoLink=
=22 id=3D=22OWA51685e85-9635-4b10-39be-4b84ce513943=22 href=3D=22https://=
github.com/syslog-ng/syslog-ng/pull/5174=22 originalsrc=3D=22https://gith=
ub.com/syslog-ng/syslog-ng/pull/5174=22>=235174</a>)</div>
</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>cloud-auth</code>: Added <code>azure-monitor()</code>&=23160;=
destination</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>Added oauth2 authentication for azure monitor destinations.</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>Example usage:</div>
<pre role=3D=22presentation=22><code>azure-monitor(
     dcr-id(=22dcr id=22)
     dce-uri(=22dce uri=22)
     stream=5Fname(=22stream name=22)
     auth(
          tenant-id(=22tenant id=22)
          app-id(=22app id=22)
          app-secret(=22app secret=22)
     )
)
</code></pre>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=
=22/syslog-ng/syslog-ng/pull/5293/hovercard=22 class=3D=22x=5FOWAAutoLink=
=22 id=3D=22OWAaf98083e-64ea-b5bc-6741-a82863e322f5=22 href=3D=22https://=
github.com/syslog-ng/syslog-ng/pull/5293=22 originalsrc=3D=22https://gith=
ub.com/syslog-ng/syslog-ng/pull/5293=22>=235293</a>)</div>
</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>multi-line-mode()</code>: Added a new mutiline detection mode=
 <code>empty-line-separated</code>&=23160;that, as its name suggests, rea=
ds and treats all messages as one till it receives an empty line (which c=
ontains only a <code>=5Cr</code>, <code>=5Cn</code>&=23160;or <code>=5Cr=5C=
n</code>&=23160;sequence).<br />
(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=22/s=
yslog-ng/syslog-ng/pull/5259/hovercard=22 class=3D=22x=5FOWAAutoLink=22 i=
d=3D=22OWAcc3d18fa-68ec-49fa-b84d-3c2125b61b40=22 href=3D=22https://githu=
b.com/syslog-ng/syslog-ng/pull/5259=22 originalsrc=3D=22https://github.co=
m/syslog-ng/syslog-ng/pull/5259=22>=235259</a>)</div>
</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>google-pubsub-grpc()</code>: Added a new destination that sen=
ds logs to Google Pub/Sub via the gRPC interface.</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>Example config:</div>
<pre role=3D=22presentation=22><code>google-pubsub-grpc(
  project(=22my=5Fproject=22)
  topic(=24topic)

  data(=24MESSAGE)
  attributes(
    timestamp =3D&gt; =24S=5FISODATE,
    host =3D&gt; =24HOST,
  )

  workers(4)
  batch-timeout(1000) =23 ms
  batch-lines(1000)
);
</code></pre>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>The <code>project()</code>&=23160;and <code>topic()</code>&=23160;o=
ptions are templatable.<br />
The default service endpoint can be changed with the <code>service=5Fendp=
oint()</code>&=23160;option.<br />
(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=22/s=
yslog-ng/syslog-ng/pull/5266/hovercard=22 class=3D=22x=5FOWAAutoLink=22 i=
d=3D=22OWAc2b4646d-b50b-023f-0f62-45485dcb937e=22 href=3D=22https://githu=
b.com/syslog-ng/syslog-ng/pull/5266=22 originalsrc=3D=22https://github.co=
m/syslog-ng/syslog-ng/pull/5266=22>=235266</a>)</div>
</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>ivykis</code>: We have switched to <a class=3D=22x=5FOWAAutoL=
ink=22 id=3D=22OWA233cb61c-47ff-a10f-f428-ccc795575d7a=22 href=3D=22https=
://github.com/balabit/ivykis=22 originalsrc=3D=22https://github.com/balab=
it/ivykis=22>our own fork</a>&=23160;of ivykis as the source for builds w=
hen using syslog-ng=E2=80=99s internal ivykis option (<code>--with-ivykis=
=3Dinternal</code>&=23160;in autotools or <code>-DIVYKIS=5FSOURCE=3Dinter=
nal</code>&=23160;in CMake).</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>We recommend switching to this internal version, as it includes new=
 features not available in the <a class=3D=22x=5FOWAAutoLink=22 id=3D=22O=
WA264c2212-7150-53ca-3bd9-33fbb55fd0ce=22 href=3D=22https://github.com/bu=
ytenh/ivykis=22 originalsrc=3D=22https://github.com/buytenh/ivykis=22>ori=
ginal version</a>&=23160;and likely never will be.<br />
(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=22/s=
yslog-ng/syslog-ng/pull/5307/hovercard=22 class=3D=22x=5FOWAAutoLink=22 i=
d=3D=22OWAac3d0cb5-8439-1407-e710-2843e164ecdf=22 href=3D=22https://githu=
b.com/syslog-ng/syslog-ng/pull/5307=22 originalsrc=3D=22https://github.co=
m/syslog-ng/syslog-ng/pull/5307=22>=235307</a>)</div>
</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>ivykis</code>: =46ixed and merged the in development phase <c=
ode>io=5Furing</code>&=23160;based polling method solution to <a class=3D=
=22x=5FOWAAutoLink=22 id=3D=22OWA7755c6de-38f7-6bc3-ad4b-7727a086214b=22 =
href=3D=22https://github.com/balabit/ivykis=22 originalsrc=3D=22https://g=
ithub.com/balabit/ivykis=22>our ivykis fork</a>.</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>This is am experimental integration and not selected by default, yo=
u must activate it directly either using the <code>IV=5FEXCLUDE=5FPOLL=5F=
METHOD</code>&=23160;or <code>IV=5FSELECT=5FPOLL=5FMETHOD</code>&=23160;a=
s described <a rel=3D=22nofollow=22 class=3D=22x=5FOWAAutoLink=22 id=3D=22=
OWA46aeffe3-c0e8-fd6a-cbc5-e6fc561ecb15=22 href=3D=22https://syslog-ng.gi=
thub.io/admin-guide/060=5FSources/020=5F=46ile/001=5F=46ile=5Ffollowing=22=
 originalsrc=3D=22https://syslog-ng.github.io/admin-guide/060=5FSources/0=
20=5F=46ile/001=5F=46ile=5Ffollowing=22>here</a>.<br />
(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=22/s=
yslog-ng/syslog-ng/pull/5312/hovercard=22 class=3D=22x=5FOWAAutoLink=22 i=
d=3D=22OWAb3c8fc2e-44d3-11ed-aa1e-4f07bb5a2c99=22 href=3D=22https://githu=
b.com/syslog-ng/syslog-ng/pull/5312=22 originalsrc=3D=22https://github.co=
m/syslog-ng/syslog-ng/pull/5312=22>=235312</a>)</div>
</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>file()</code>, <code>wildcard-file()</code>: Added <code>foll=
ow-method()</code>&=23160;option.</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>=7CAccepted values:=7C legacy =7C inotify =7C poll =7C system =7C</=
div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>This option controls how syslog-ng will follow file changes.<br />
The default <code>legacy</code>&=23160;mode preserves the pre-4.9 version=
 file follow-mode behavior of syslog-ng, which is based on the value of f=
ollow-freq().<br />
The <code>poll</code>&=23160;value forces syslog-ng to poll for file chan=
ges at the interval specified by the monitor-freq() option, even if a mor=
e efficient method (such as <code>inotify</code>&=23160;or <code>kqueue</=
code>) is available.<br />
If <code>inotify</code>&=23160;is selected and supported by the platform,=
 syslog-ng uses it to detect changes in source files. This is the most ef=
ficient and least resource-consuming option available on Linux for regula=
r files.<br />
The <code>system</code>&=23160;value will use system poll methods (via iv=
ykis) like <code>port-timer</code> <code>port</code> <code>dev=5Fpoll</co=
de> <code>epoll-timerfd</code> <code>epoll</code> <code>kqueue</code> <co=
de>ppoll</code> <code>poll</code>&=23160;and <code>uring</code>. =46or mo=
re information about how to control the system polling methods used, see =
<a rel=3D=22nofollow=22 class=3D=22x=5FOWAAutoLink=22 id=3D=22OWA3c099903=
-1e7d-eb88-5e6f-91b6bed10048=22 href=3D=22https://syslog-ng.github.io/adm=
in-guide/060=5FSources/020=5F=46ile/001=5F=46ile=5Ffollowing=22 originals=
rc=3D=22https://syslog-ng.github.io/admin-guide/060=5FSources/020=5F=46il=
e/001=5F=46ile=5Ffollowing=22>How content changes are followed in file() =
and wildcard-file() sources</a>.<br />
(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=22/s=
yslog-ng/syslog-ng/pull/5338/hovercard=22 class=3D=22x=5FOWAAutoLink=22 i=
d=3D=22OWA47219dcc-99bc-bb2d-cddd-0e4ca81eebb3=22 href=3D=22https://githu=
b.com/syslog-ng/syslog-ng/pull/5338=22 originalsrc=3D=22https://github.co=
m/syslog-ng/syslog-ng/pull/5338=22>=235338</a>)</div>
</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>opentelemetry()</code>, <code>loki()</code>&=23160;destinatio=
n: Add support for templated <code>header()</code>&=23160;values<br />
(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=22/s=
yslog-ng/syslog-ng/pull/5184/hovercard=22 class=3D=22x=5FOWAAutoLink=22 i=
d=3D=22OWA4491306e-22c5-b29c-3b9f-61b6cfaf15e7=22 href=3D=22https://githu=
b.com/syslog-ng/syslog-ng/pull/5184=22 originalsrc=3D=22https://github.co=
m/syslog-ng/syslog-ng/pull/5184=22>=235184</a>)</div>
</li>
</ul>
<div class=3D=22x=5FelementToProof=22 style=3D=22font-family:Aptos,&quot;=
Aptos=5FEmbedded=46ont&quot;,&quot;Aptos=5FMS=46ontService&quot;,Calibri,=
Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)=22><b>Bugfixes</b>=
</div>
<ul>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>syslog-ng-otlp()</code>&=23160;destination: =46ixed a crash.<=
br />
(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=22/s=
yslog-ng/syslog-ng/pull/5267/hovercard=22 class=3D=22x=5FOWAAutoLink=22 i=
d=3D=22OWA8fefd32d-3eae-69f0-ffe2-8eba681d665c=22 href=3D=22https://githu=
b.com/syslog-ng/syslog-ng/pull/5267=22 originalsrc=3D=22https://github.co=
m/syslog-ng/syslog-ng/pull/5267=22>=235267</a>)</div>
</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>=46ixed some time parsing and time formatting issues.<br />
(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=22/s=
yslog-ng/syslog-ng/pull/5386/hovercard=22 class=3D=22x=5FOWAAutoLink=22 i=
d=3D=22OWA2af8b2bd-9899-0140-a563-435a9ba1c972=22 href=3D=22https://githu=
b.com/syslog-ng/syslog-ng/pull/5386=22 originalsrc=3D=22https://github.co=
m/syslog-ng/syslog-ng/pull/5386=22>=235386</a>)</div>
</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>syslogformat: =46ix integer overflow on set pri<br />
(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=22/s=
yslog-ng/syslog-ng/pull/5254/hovercard=22 class=3D=22x=5FOWAAutoLink=22 i=
d=3D=22OWA8d785fe1-4751-c148-a0c1-04d60dd359b9=22 href=3D=22https://githu=
b.com/syslog-ng/syslog-ng/pull/5254=22 originalsrc=3D=22https://github.co=
m/syslog-ng/syslog-ng/pull/5254=22>=235254</a>)</div>
</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>network(), syslog()</code>: =46ixed a potential crash for TLS=
 destinations during reload</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>In case of a TLS connection, if the handshake didn't happen before =
reloading syslog-ng,<br />
it crashed on the first message sent to that destination.<br />
(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=22/s=
yslog-ng/syslog-ng/pull/5303/hovercard=22 class=3D=22x=5FOWAAutoLink=22 i=
d=3D=22OWAe25c2ec5-6740-7a80-26c6-9454aaf6b84d=22 href=3D=22https://githu=
b.com/syslog-ng/syslog-ng/pull/5303=22 originalsrc=3D=22https://github.co=
m/syslog-ng/syslog-ng/pull/5303=22>=235303</a>)</div>
</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>collectd()</code>: fix not reading server responses<br />
(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=22/s=
yslog-ng/syslog-ng/pull/5390/hovercard=22 class=3D=22x=5FOWAAutoLink=22 i=
d=3D=22OWA1105d838-4c15-e46c-bdd0-77c7c7507b9b=22 href=3D=22https://githu=
b.com/syslog-ng/syslog-ng/pull/5390=22 originalsrc=3D=22https://github.co=
m/syslog-ng/syslog-ng/pull/5390=22>=235390</a>)</div>
</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>metrics: <code>syslog-ng-ctl --reset</code>&=23160;will no longer r=
eset Prometheus metrics<br />
(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=22/s=
yslog-ng/syslog-ng/pull/5261/hovercard=22 class=3D=22x=5FOWAAutoLink=22 i=
d=3D=22OWA83cbd238-8262-04c6-7d39-5189ba255e56=22 href=3D=22https://githu=
b.com/syslog-ng/syslog-ng/pull/5261=22 originalsrc=3D=22https://github.co=
m/syslog-ng/syslog-ng/pull/5261=22>=235261</a>)</div>
</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>rate-limit()</code>: fix precision issue that could occur at =
a very low message rate<br />
(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=22/s=
yslog-ng/syslog-ng/pull/5346/hovercard=22 class=3D=22x=5FOWAAutoLink=22 i=
d=3D=22OWA92506a95-2e83-67e7-75f2-2e23c08bcb1b=22 href=3D=22https://githu=
b.com/syslog-ng/syslog-ng/pull/5346=22 originalsrc=3D=22https://github.co=
m/syslog-ng/syslog-ng/pull/5346=22>=235346</a>)</div>
</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>network()</code>, <code>syslog()</code>&=23160;sources and de=
stinations: fix TCP/TLS shutdown<br />
(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=22/s=
yslog-ng/syslog-ng/pull/5271/hovercard=22 class=3D=22x=5FOWAAutoLink=22 i=
d=3D=22OWA6ba6f48d-60af-16f9-ce38-2e53693822a9=22 href=3D=22https://githu=
b.com/syslog-ng/syslog-ng/pull/5271=22 originalsrc=3D=22https://github.co=
m/syslog-ng/syslog-ng/pull/5271=22>=235271</a>)</div>
</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>http</code>: =46ixed a batching related bug that happened wit=
h templated URLs and a single worker.<br />
(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=22/s=
yslog-ng/syslog-ng/pull/5281/hovercard=22 class=3D=22x=5FOWAAutoLink=22 i=
d=3D=22OWAc0e8fefe-e27d-3da5-7dc2-51ad3a13e6dc=22 href=3D=22https://githu=
b.com/syslog-ng/syslog-ng/pull/5281=22 originalsrc=3D=22https://github.co=
m/syslog-ng/syslog-ng/pull/5281=22>=235281</a>)</div>
</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22><code>network()</code>, <code>syslog()</code>&=23160;destinations: =
handle async TLS messages (KeyUpdate, etc.)<br />
(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=22/s=
yslog-ng/syslog-ng/pull/5390/hovercard=22 class=3D=22x=5FOWAAutoLink=22 i=
d=3D=22OWAa3ac4307-be78-9f95-5a76-215786dceea8=22 href=3D=22https://githu=
b.com/syslog-ng/syslog-ng/pull/5390=22 originalsrc=3D=22https://github.co=
m/syslog-ng/syslog-ng/pull/5390=22>=235390</a>)</div>
</li>
</ul>
<div class=3D=22x=5FelementToProof=22 style=3D=22font-family:Aptos,&quot;=
Aptos=5FEmbedded=46ont&quot;,&quot;Aptos=5FMS=46ontService&quot;,Calibri,=
Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)=22><b>Notes to dev=
elopers</b></div>
<ul>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>editorconfig: configure supported editors for the=
 project's style<br />
(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=22/s=
yslog-ng/syslog-ng/pull/5331/hovercard=22 class=3D=22x=5FOWAAutoLink=22 i=
d=3D=22OWA9f0200a4-f993-a914-a057-8613ce61c2f4=22 href=3D=22https://githu=
b.com/syslog-ng/syslog-ng/pull/5331=22 originalsrc=3D=22https://github.co=
m/syslog-ng/syslog-ng/pull/5331=22>=235331</a>)</li>
</ul>
<div class=3D=22x=5FelementToProof=22 style=3D=22font-family:Aptos,&quot;=
Aptos=5FEmbedded=46ont&quot;,&quot;Aptos=5FMS=46ontService&quot;,Calibri,=
Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)=22><b>Other change=
s</b></div>
<ul>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>java-modules: Upgrade java <code>common</code>&=23160;and <code>hdf=
s</code>&=23160;dependencies.<br />
(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=22/s=
yslog-ng/syslog-ng/pull/5366/hovercard=22 class=3D=22x=5FOWAAutoLink=22 i=
d=3D=22OWAcd69fd17-3f48-b8ef-bc12-5778fecd3f06=22 href=3D=22https://githu=
b.com/syslog-ng/syslog-ng/pull/5366=22 originalsrc=3D=22https://github.co=
m/syslog-ng/syslog-ng/pull/5366=22>=235366</a>)</div>
</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>java-modules: Remove depricated java destinations: <code>elasticsea=
rch2</code>, <code>kafka-java</code>&=23160;and the <code>java-http</code=
>.</div>
<div role=3D=22presentation=22 style=3D=22margin-top:1em; margin-bottom:1=
em=22>The following destinations can be used instead:</div>
</li>
<ul>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22><code>elasticsearch2</code>&=23160;- Both <a rel=3D=
=22nofollow=22 class=3D=22x=5FOWAAutoLink=22 id=3D=22OWA55162fde-0d2c-228=
1-4aea-59918504f674=22 href=3D=22https://syslog-ng.github.io/admin-guide/=
070=5FDestinations/035=5Felasticsearch-datastream/README=22 originalsrc=3D=
=22https://syslog-ng.github.io/admin-guide/070=5FDestinations/035=5Felast=
icsearch-datastream/README=22>elastic-datastream()</a>&=23160;or the <a r=
el=3D=22nofollow=22 class=3D=22x=5FOWAAutoLink=22 id=3D=22OWAc3d2fc4c-a26=
9-a5c8-9f44-4f032b192f07=22 href=3D=22https://syslog-ng.github.io/admin-g=
uide/070=5FDestinations/030=5FElasticsearch-http/README=22 originalsrc=3D=
=22https://syslog-ng.github.io/admin-guide/070=5FDestinations/030=5FElast=
icsearch-http/README=22>elastic-http()</a>&=23160;can be used.</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22><code>kafka-java</code>&=23160;- The C based <a r=
el=3D=22nofollow=22 class=3D=22x=5FOWAAutoLink=22 id=3D=22OWAb563cc7a-8d3=
7-8589-73e0-65ae2d9dec46=22 href=3D=22https://syslog-ng.github.io/admin-g=
uide/070=5FDestinations/100=5FKafka-c/README=22 originalsrc=3D=22https://=
syslog-ng.github.io/admin-guide/070=5FDestinations/100=5FKafka-c/README=22=
>kafka-c()</a>&=23160;destination can be used instead. To help with migra=
tion check out the <a rel=3D=22nofollow=22 class=3D=22x=5FOWAAutoLink=22 =
id=3D=22OWA74dd0b3c-1e2e-922c-aa1a-487a8c7ef353=22 href=3D=22https://sysl=
og-ng.github.io/admin-guide/070=5FDestinations/100=5FKafka-c/001=5FShifti=
ng=5Ffrom=5FJava=5Fto=5FC=22 originalsrc=3D=22https://syslog-ng.github.io=
/admin-guide/070=5FDestinations/100=5FKafka-c/001=5FShifting=5Ffrom=5FJav=
a=5Fto=5FC=22>Shifting from Java implementation to C implementation</a>&=23=
160;page.</li>
<li style=3D=22font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot=
;Aptos=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12=
pt; color:rgb(0,0,0)=22><code>java-http</code>&=23160;- the C based <a re=
l=3D=22nofollow=22 class=3D=22x=5FOWAAutoLink=22 id=3D=22OWAd8cafee0-14ab=
-303c-81f1-1d0b5a7c0128=22 href=3D=22https://syslog-ng.github.io/admin-gu=
ide/070=5FDestinations/081=5Fhttp/README=22 originalsrc=3D=22https://sysl=
og-ng.github.io/admin-guide/070=5FDestinations/081=5Fhttp/README=22>http(=
)</a>&=23160;destination can be used.<br />
(<a data-hovercard-type=3D=22pull=5Frequest=22 data-hovercard-url=3D=22/s=
yslog-ng/syslog-ng/pull/5366/hovercard=22 class=3D=22x=5FOWAAutoLink=22 i=
d=3D=22OWAb261075a-781e-6fd0-9215-4e3a40933aba=22 href=3D=22https://githu=
b.com/syslog-ng/syslog-ng/pull/5366=22 originalsrc=3D=22https://github.co=
m/syslog-ng/syslog-ng/pull/5366=22>=235366</a>)</li>
</ul>
</ul>
<div class=3D=22x=5FelementToProof=22 style=3D=22font-family:Aptos,&quot;=
Aptos=5FEmbedded=46ont&quot;,&quot;Aptos=5FMS=46ontService&quot;,Calibri,=
Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)=22><b>Credits</b><=
/div>
<div class=3D=22x=5FelementToProof=22 style=3D=22margin-top:1em; margin-b=
ottom:1em; font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot;Apt=
os=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12pt; =
color:rgb(0,0,0)=22>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.</div>
<div class=3D=22x=5FelementToProof=22 style=3D=22margin-top:1em; margin-b=
ottom:1em; font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot;Apt=
os=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12pt; =
color:rgb(0,0,0)=22>Reporting bugs, testing changes, writing code or simp=
ly providing<br />
feedback are all important contributions, so please if you are a user<br =
/>
of syslog-ng, contribute.</div>
<div class=3D=22x=5FelementToProof=22 style=3D=22margin-top:1em; margin-b=
ottom:1em; font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot;Apt=
os=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12pt; =
color:rgb(0,0,0)=22>We would like to thank the following people for their=
 contribution:</div>
<div class=3D=22x=5FelementToProof=22 style=3D=22margin-top:1em; margin-b=
ottom:1em; font-family:Aptos,&quot;Aptos=5FEmbedded=46ont&quot;,&quot;Apt=
os=5FMS=46ontService&quot;,Calibri,Helvetica,sans-serif; font-size:12pt; =
color:rgb(0,0,0)=22>Alex Becker, Attila Szakacs, Balazs Scheidler, B=C3=A1=
lint Horv=C3=A1th,<br />
David Mandelberg, Eli Schwartz, Hofi, Kov=C3=A1cs Gerg=C3=B5 =46erenc,<br=
 />
L=C3=A1szl=C3=B3 V=C3=A1rady, Peter Czanik (CzP), Petr Vaganov,<br />
Shiraz, Szilard Parrag, Tamas Pal, Tam=C3=A1s Kosztyu, shifter</div>
<div class=3D=22x=5FelementToProof=22 style=3D=22font-family:Aptos,&quot;=
Aptos=5FEmbedded=46ont&quot;,&quot;Aptos=5FMS=46ontService&quot;,Calibri,=
Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)=22><br /></div>
<div class=3D=22x=5FelementToProof=22 id=3D=22x=5FSignature=22>
<div class=3D=22x=5FelementToProof=22 style=3D=22font-family:Aptos,Aptos=5F=
Embedded=46ont,Aptos=5FMS=46ontService,Calibri,Helvetica,sans-serif; font=
-size:12pt; color:rgb(0,0,0)=22><br /></div>
<div class=3D=22x=5FelementToProof=22 style=3D=22direction:ltr; font-fami=
ly:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)=22=
>Peter Czanik (CzP) <a class=3D=22x=5Fmoz-txt-link-rfc2396E=22 href=3D=22=
mailto:peter.czanik=40oneidentity.com=22>&lt;peter.czanik=40oneidentity.c=
om&gt;</a><br />
Balabit (a OneIdentity company) / syslog-ng upstream<br />
<a target=3D=22=5Fblank=22 href=3D=22https://syslog-ng.com/community/=22 =
originalsrc=3D=22https://syslog-ng.com/community/=22>https://syslog-ng.co=
m/<wbr />community/</a><br />
<a target=3D=22=5Fblank=22 href=3D=22https://twitter.com/PCzanik=22 origi=
nalsrc=3D=22https://twitter.com/PCzanik=22 class=3D=22x=5Fmoz-txt-link-fr=
eetext=22>https://twitter.com/PCzanik</a></div>
<div class=3D=22x=5FelementToProof=22 style=3D=22font-family:Calibri,Aria=
l,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)=22><br /></div>
</div>
<br />
<fieldset class=3D=22x=5Fmoz-mime-attachment-header=22></fieldset>
<pre class=3D=22x=5Fmoz-quote-pre=22>=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=
=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=
=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=
=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F
Member info: <a class=3D=22x=5Fmoz-txt-link-freetext=22 href=3D=22https:/=
/lists.balabit.hu/mailman/listinfo/syslog-ng=22 originalsrc=3D=22https://=
lists.balabit.hu/mailman/listinfo/syslog-ng=22>https://lists.balabit.hu/m=
ailman/listinfo/syslog-ng</a>
Documentation: <a class=3D=22x=5Fmoz-txt-link-freetext=22 href=3D=22http:=
//www.balabit.com/support/documentation/=3Fproduct=3Dsyslog-ng=22 origina=
lsrc=3D=22http://www.balabit.com/support/documentation/=3Fproduct=3Dsyslo=
g-ng=22>http://www.balabit.com/support/documentation/=3Fproduct=3Dsyslog-=
ng</a>
=46AQ: <a class=3D=22x=5Fmoz-txt-link-freetext=22 href=3D=22http://www.ba=
labit.com/wiki/syslog-ng-faq=22 originalsrc=3D=22http://www.balabit.com/w=
iki/syslog-ng-faq=22>http://www.balabit.com/wiki/syslog-ng-faq</a>

</pre>
=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=
=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=
=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=
=5F=5F=5F<br />
Member info: %(web=5Fpage=5Furl)slistinfo/%(=5Finternal=5Fname)s<br />
Documentation: http://www.balabit.com/support/documentation/=3Fproduct=3D=
syslog-ng<br />
=46AQ: http://www.balabit.com/wiki/syslog-ng-faq<br />
<br /></ul>
</blockquote>
</div>
</body>
</html>

--68ada090_77465f01_205d--


--===============6078955907403047187==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

______________________________________________________________________________
Member info: %(web_page_url)slistinfo/%(_internal_name)s
Documentation: http://www.balabit.com/support/documentation/?product=syslog-ng
FAQ: http://www.balabit.com/wiki/syslog-ng-faq


--===============6078955907403047187==--