1 # NOTE: only core functionality is available without /usr;
2 # some non-trivial extension modules rely in libraries/daemons existing in /usr.
5 %bcond_with dynamic # link dynamically with glib, eventlog, pcre (modules are always linked dynamically)
6 %bcond_without sql # support for logging to SQL DB
7 %bcond_without tests # do not perform "make check"
8 %bcond_with bpf # loading eBPF programs support (generates some data from current kernel)
9 %bcond_without grpc # support for GRPC protocols
10 %bcond_without http # support for HTTP destination
11 %bcond_without json # support for JSON template formatting
12 %bcond_without mongodb # support for mongodb destination
13 %bcond_without mqtt # support for MQTT protocol
14 %bcond_without redis # support for Redis destination
15 %bcond_without smtp # support for logging into SMTP
16 %bcond_without geoip2 # support for GeoIP2
17 %bcond_without kafka # support for Apache Kafka protocol
18 %bcond_without riemann # support for Riemann monitoring system
19 %bcond_without amqp # AMQP support
20 %bcond_without python # python module
21 %bcond_with java # java modules and support
22 %bcond_without system_libivykis # use system libivykis
23 %bcond_without system_rabbitmq # use system librabbitmq
26 %undefine with_system_rabbitmq
30 %define libivykis_version 0.43.2
32 %define glib2_ver 1:2.32.0
34 Summary: Syslog-ng - new generation of the system logger
35 Summary(pl.UTF-8): Syslog-ng - systemowy demon logujący nowej generacji
36 Summary(pt_BR.UTF-8): Daemon de log nova geração
40 License: GPL v2+ with OpenSSL exception
42 #Source0Download: https://github.com/syslog-ng/syslog-ng/releases
43 Source0: https://github.com/syslog-ng/syslog-ng/releases/download/%{name}-%{version}/%{name}-%{version}.tar.gz
44 # Source0-md5: 6a5852343f9a34449c3812b474728aa7
47 Source3: %{name}.logrotate
48 Source4: log_server.conf
49 Source5: log_remote.conf
51 Source7: freshclam.conf
52 Source8: iptables.conf
55 # for git archives (release tarballs include ivykis)
56 #Source10Download: https://github.com/buytenh/ivykis/releases
57 #Source10: https://github.com/buytenh/ivykis/archive/v%{libivykis_version}/ivykis-%{libivykis_version}.tar.gz
58 Source10: https://downloads.sourceforge.net/libivykis/ivykis-%{libivykis_version}.tar.gz
59 # Source10-md5: df51c6d5c52bef1c82ea33eddc997792
61 Patch0: %{name}-datadir.patch
62 Patch2: %{name}-nolibs.patch
63 Patch4: man-paths.patch
64 Patch5: %{name}-link.patch
65 Patch6: no_shared_ivykis.patch
67 Patch9: glib-static.patch
68 Patch10: file_seek.patch
69 URL: https://syslog-ng.org/
70 BuildRequires: autoconf >= 2.59
71 BuildRequires: automake
72 BuildRequires: bison >= 3.7.6
74 BuildRequires: criterion-devel >= 2.3.3-5
76 %{?with_http:BuildRequires: curl-devel}
77 BuildRequires: docbook-style-xsl-nons
78 BuildRequires: eventlog-devel >= 0.2.12
80 BuildRequires: glib2-devel >= %{glib2_ver}
81 %{?with_java:BuildRequires: gradle >= 3.4}
82 %{?with_grpc:BuildRequires: grpc-devel >= 1.16.1}
83 %{?with_redis:BuildRequires: hiredis-devel >= 0.11.0}
84 %{?with_java:BuildRequires: jdk >= 1.8}
85 %{?with_json:BuildRequires: json-c-devel >= 0.13}
87 %{?with_bpf:BuildRequires: kernel-tools >= 4.15}
88 %{?with_bpf:BuildRequires: libbpf-devel >= 1.0.1}
89 BuildRequires: libcap-devel
90 %{?with_sql:BuildRequires: libdbi-devel >= 0.9.0}
91 %{?with_smtp:BuildRequires: libesmtp-devel}
92 %{?with_system_libivykis:BuildRequires: libivykis-devel >= %{libivykis_version}}
93 %{?with_geoip2:BuildRequires: libmaxminddb-devel}
94 BuildRequires: libnet-devel >= 1:1.1.2.1-3
95 %{?with_kafka:BuildRequires: librdkafka-devel >= 1.1.0}
96 BuildRequires: libtool >= 2:2.0
97 BuildRequires: libwrap-devel
98 BuildRequires: libxslt-progs
99 BuildRequires: lz4-devel >= r131-5
100 %{?with_mongodb:BuildRequires: mongo-c-driver-devel >= 1.0.0}
101 BuildRequires: net-snmp-devel
102 BuildRequires: openssl-devel >= 0.9.8
103 %{?with_mqtt:BuildRequires: paho-mqtt-devel}
104 BuildRequires: pcre2-8-devel >= 10.0
105 BuildRequires: pkgconfig
106 %{?with_grpc:BuildRequires: protobuf-devel >= 3.12.0}
107 %{?with_system_rabbitmq:BuildRequires: rabbitmq-c-devel >= 0.5.3}
108 %{?with_riemann:BuildRequires: riemann-c-client-devel >= 1.6.0}
109 BuildRequires: rpm >= 4.4.9-56
110 BuildRequires: rpmbuild(macros) >= 1.623
113 BuildRequires: GeoIP-db-Country
114 BuildRequires: pylint
115 BuildRequires: python3
116 %{?with_python:BuildRequires: python3-devel >= 1:3.2}
117 BuildRequires: python3-pep8
118 BuildRequires: python3-ply
119 BuildRequires: python3-pytest-mock
120 BuildRequires: tzdata
122 %if %{without dynamic}
123 BuildRequires: eventlog-static >= 0.2.12
124 BuildRequires: glib2-static >= %{glib2_ver}
125 %{?with_system_libivykis:BuildRequires: libivykis-static >= %{libivykis_version}}
126 BuildRequires: pcre-static >= 6.1
127 BuildRequires: zlib-static
129 Requires(post): fileutils
130 Requires(post,preun): /sbin/chkconfig
131 Requires: %{name}-libs = %{version}-%{release}
132 Requires: psmisc >= 20.1
133 %{?with_system_rabbitmq:Requires: rabbitmq-c >= 0.5.3}
134 Requires: rc-scripts >= 0.4.3.0
136 Requires: libnet >= 1:1.1.2.1-7
137 # for afsocket and dbparser
138 Requires: openssl >= 0.9.8
139 Provides: service(klogd)
140 Provides: service(syslog)
141 Provides: syslogdaemon
142 Obsoletes: syslog-ng-module-afsocket < 3.3.1-4
143 Obsoletes: syslog-ng-module-dbparser < 3.3.1-4
144 Obsoletes: syslog-ng-systemd < 3.3.4-3
149 Conflicts: cronie < 1.5.0-3
150 Conflicts: fcron < 3.1.2-5
151 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
153 %define xsl_stylesheets_dir /usr/share/sgml/docbook/xsl-stylesheets
155 %if %{without dynamic}
156 # syslog-ng has really crazy linking rules (see their bugzilla).
157 # Some rules, according to syslog-ng devs, are like this:
158 # - libsyslog-ng.so has undefined symbols for third party libraries
159 # and these symbols should go via main syslog-ng binary
160 # - same applies for modules
161 # In dynamic case tests are forcily linked with dynamic modules, which doesn't work with as-needed.
162 %define filterout_ld -Wl,--as-needed -Wl,--no-copy-dt-needed-entries
163 %define no_install_post_check_so 1
164 %define _sbindir /sbin
165 %define slibdir /%{_lib}
167 %define slibdir %{_libdir}
169 # or just %{_libdir}? modules seem to be always linked dynamically
170 %define moduledir %{slibdir}/syslog-ng
173 syslog-ng is a syslogd replacement for Unix and Unix-like systems. It
174 has been tested on Solaris, BSDi and Linux, and were found to run
175 reliably. syslog-ng gives you a much enhanced configuration scheme,
176 which lets you filter messages based on not only priority/facility
177 pairs, but also on message content. You can use regexps to direct log
178 stream to different destinations. A destination can be anything from a
179 simple file to a network connection. syslog-ng supports TCP
180 logforwarding, together with hashing to prevent unauthorized
181 modification on the line.
183 %description -l pl.UTF-8
184 Syslog-ng jest zamiennikiem dla standardowo używanych programów typu
185 syslog. Działa w systemie SunOS, BSD, Linux. Daje znacznie większe
186 możliwości logowania i kontrolowania zbieranych informacji.
188 %description -l pt_BR.UTF-8
189 Syslog-ng é um substituto para o syslog tradicional, mas com diversas
190 melhorias, como, por exemplo, a habilidade de filtrar mensagens de log
191 por seu conteúdo (usando expressões regulares) e não apenas pelo par
192 facility/prioridade como o syslog original.
194 %package module-afmongodb
195 Summary: MongoDB destination support module for syslog-ng
196 Summary(pl.UTF-8): Moduł sysloga-ng do obsługi zapisu logów w bazie MongoDB
198 Requires: %{name} = %{version}-%{release}
199 Requires: mongo-c-driver >= 1.0.0
201 %description module-afmongodb
202 MongoDB destination support module for syslog-ng.
204 %description module-afmongodb -l pl.UTF-8
205 Moduł sysloga-ng do obsługi zapisu logów w bazie MongoDB.
207 %package module-afsmtp
208 Summary: SMTP output support module for syslog-ng
209 Summary(pl.UTF-8): Moduł sysloga-ng do obsługi wysyłania logów do serwerów SMTP
211 Requires: %{name} = %{version}-%{release}
212 Requires: openssl >= 0.9.8
214 %description module-afsmtp
215 SMTP output support module for syslog-ng.
217 %description module-afsmtp -l pl.UTF-8
218 Moduł sysloga-ng do obsługi wysyłania logów do serwerów SMTP.
220 %package module-afsql
221 Summary: SQL destination support module for syslog-ng
222 Summary(pl.UTF-8): Moduł sysloga-ng do obsługi zapisu logów w bazach SQL
224 Requires: %{name} = %{version}-%{release}
225 Requires: libdbi >= 0.9.0
226 Requires: openssl >= 0.9.8
228 %description module-afsql
229 SQL destination support module for syslog-ng (via libdbi).
231 %description module-afsql -l pl.UTF-8
232 Moduł sysloga-ng do obsługi zapisu logów w bazach SQL (poprzez
236 Summary: HTTP destination support module for syslog-ng
237 Summary(pl.UTF-8): Moduł sysloga-ng do obsługi zapisu logów poprzez HTTP
239 Requires: %{name} = %{version}-%{release}
241 %description module-http
242 HTTP destination support module for syslog-ng (via libcurl).
244 %description module-http -l pl.UTF-8
245 Moduł sysloga-ng do obsługi zapisu logów poprzez HTTP (via libcurl).
247 %package module-cloudauth
248 Summary: Cloud Authentication support for syslog-ng: pubsub
249 Summary(pl.UTF-8): Moduł sysloga-ng do uwierzytelniania chmurowego na potrzeby pubsub
251 Requires: %{name} = %{version}-%{release}
253 %description module-cloudauth
254 Cloud Authentication support for syslog-ng, currently used for Google
257 %description module-cloudauth -l pl.UTF-8
258 Moduł sysloga-ng do obsługi uwierzytelniania w chmurze, używany przez
262 Summary: GRPC modules for syslog-ng: bigquery, loki, otel
263 Summary(pl.UTF-8): Moduły GRPC dla sysloga-ng: bigquery, loki, otel
265 Requires: %{name} = %{version}-%{release}
267 %description module-grpc
268 GRPC protocols support for syslog-ng, currently: bigquery, loki and
271 %description module-grpc -l pl.UTF-8
272 Obsługa protokołów GRPC dla sysloga-ng, obecnie: bigquery, loki i
275 %package module-json-plugin
276 Summary: JSON formatting template function for syslog-ng
277 Summary(pl.UTF-8): Moduł sysloga-ng do obsługi szablonów z formatowaniem JSON
279 Requires: %{name} = %{version}-%{release}
280 Requires: json-c >= 0.9
281 Obsoletes: syslog-ng-module-tfjson < 3.4.2
283 %description module-json-plugin
284 JSON formatting template function for syslog-ng.
286 %description module-json-plugin -l pl.UTF-8
287 Moduł sysloga-ng do obsługi szablonów z formatowaniem JSON.
289 %package module-kafka
290 Summary: Apache Kafka destination support module for syslog-ng
291 Summary(pl.UTF-8): Moduł sysloga-ng do obsługi zapisu logów poprzez protokół Apache Kafka
293 Requires: %{name} = %{version}-%{release}
294 Requires: librdkafka >= 1.1.0
296 %description module-kafka
297 Apache Kafka destination support module for syslog-ng.
299 %description module-kafka -l pl.UTF-8
300 Moduł sysloga-ng do obsługi zapisu logów poprzez protokół Apache
304 Summary: MQTT protocol support module for syslog-ng
305 Summary(pl.UTF-8): Moduł sysloga-ng do obsługi protokołu MQTT
307 Requires: %{name} = %{version}-%{release}
309 %description module-mqtt
310 MQTT protocol support module for syslog-ng.
312 %description module-mqtt -l pl.UTF-8
313 Moduł sysloga-ng do obsługi protokołu MQTT.
315 %package module-python
316 Summary: Python support module for syslog-ng
317 Summary(pl.UTF-8): Moduł obsługi Pythona dla sysloga-ng
319 Requires: %{name} = %{version}-%{release}
321 %description module-python
322 Python support module for syslog-ng.
324 %description module-python -l pl.UTF-8
325 Moduł obsługi Pythona dla sysloga-ng.
327 %package module-redis
328 Summary: Redis destination support module for syslog-ng
329 Summary(pl.UTF-8): Moduł sysloga-ng do obsługi zapisu logów w bazie Redis
331 Requires: %{name} = %{version}-%{release}
332 Requires: hiredis >= 0.11.0
334 %description module-redis
335 Redis destination support module for syslog-ng (via libhiredis).
337 %description module-redis -l pl.UTF-8
338 Moduł sysloga-ng do obsługi zapisu logów w bazie Redis (poprzez
341 %package module-riemann
342 Summary: Riemann destination support module for syslog-ng
343 Summary(pl.UTF-8): Moduł sysloga-ng do obsługi zapisu logów do systemu Riemann
345 Requires: %{name} = %{version}-%{release}
346 Requires: riemann-c-client >= 1.6.0
348 %description module-riemann
349 Riemann destination support module for syslog-ng.
351 %description module-riemann -l pl.UTF-8
352 Moduł sysloga-ng do obsługi zapisu logów do systemu Riemann.
355 Summary: Shared library for syslog-ng
356 Summary(pl.UTF-8): Biblioteka współdzielona sysloga-ng
359 Requires: eventlog >= 0.2.12
360 Requires: glib2 >= %{glib2_ver}
361 Requires: pcre >= 6.1
363 %{?with_system_libivykis:Requires: libivykis >= %{libivykis_version}}
364 Conflicts: syslog-ng < 3.3.1-3
367 Shared library for syslog-ng.
369 %description libs -l pl.UTF-8
370 Biblioteka współdzielona sysloga-ng.
373 Summary: Header files for syslog-ng modules development
374 Summary(pl.UTF-8): Pliki nagłówkowe do tworzenia modułów dla sysloga-ng
375 Group: Development/Libraries
376 Requires: %{name}-libs = %{version}-%{release}
378 Requires: eventlog-devel >= 0.2.12
379 Requires: glib2-devel >= %{glib2_ver}
380 Requires: pcre-devel >= 6.1
382 %{?with_system_libivykis:Requires: libivykis-devel >= %{libivykis_version}}
385 Header files for syslog-ng modules development.
387 %description devel -l pl.UTF-8
388 Pliki nagłówkowe do tworzenia modułów dla sysloga-ng.
391 Summary: syslog-ng test library
392 Summary(pl.UTF-8): Biblioteka testowa sysloga-ng
393 Group: Development/Libraries
394 Requires: %{name}-devel = %{version}-%{release}
396 %description test-devel
397 Test helper package for syslog-ng modules.
399 %description test-devel -l pl.UTF-8
400 Pakiet pomocniczy do testowania modułów sysloga-ng.
408 %setup -q -n %{name}-%{name}-%{version} -a 10
411 %{__mv} ivykis-%{libivykis_version} lib/ivykis
423 %{__sed} -i -e 's|/usr/bin/awk|/bin/awk|' scl/syslogconf/convert-syslogconf.awk
424 %{__sed} -i -e '1s,/usr/bin/env python3$,%{__python3},' lib/merge-grammar.py
430 %{__aclocal} `[ -d m4 ] && echo '-I m4'`
437 PYTHON="%{__python3}" \
438 --sysconfdir=%{_sysconfdir}/syslog-ng \
439 --disable-silent-rules \
440 %{__enable_disable amqp} \
442 --enable-dynamic-linking \
444 --enable-mixed-linking \
446 --enable-ebpf%{!?with_bpf:=no} \
447 %{__enable_disable geoip2} \
448 --enable-grpc%{!?with_grpc:=no} \
449 --enable-http%{!?with_http:=no} \
451 --enable-java%{!?with_java:=no} \
452 --enable-java-modules%{!?with_java:=no} \
453 --enable-json%{!?with_json:=no} \
454 --enable-linux-caps \
455 --enable-kafka%{!?with_kafka:=no} \
459 --with-mongoc=system \
463 --enable-mqtt%{!?with_mqtt:=no} \
466 --enable-python%{!?with_python:=no} \
467 --enable-redis%{!?with_redis:=no} \
468 --enable-riemann%{!?with_riemann:=no} \
469 --enable-smtp%{!?with_smtp:=no} \
470 --enable-spoof-source \
472 --enable-systemd=no \
473 --with-systemd-journal=auto \
474 --enable-tcp-wrapper \
478 --with-default-modules=affile,afprog,afsocket,afuser,basicfuncs,csvparser,dbparser,syslogformat \
479 --with-docbook=%{xsl_stylesheets_dir}/manpages/docbook.xsl \
480 %if %{with system_libivykis}
481 --with-ivykis=system \
483 --with-ivykis=internal \
485 %{?with_system_rabbitmq:--with-librabbitmq-client=system} \
486 --with-module-dir=%{moduledir} \
487 --with-pidfile-dir=/var/run \
488 --with-python-packages=none \
489 --with-timezone-dir=%{_datadir}/zoneinfo
494 LD_LIBRARY_PATH=$(find $PWD -name '*.so*' -printf "%h:")
495 PYTHONPATH=$(pwd)/tests/functional
496 export LD_LIBRARY_PATH PYTHONPATH
497 if ! %{__make} check; then
504 rm -rf $RPM_BUILD_ROOT
505 install -d $RPM_BUILD_ROOT/etc/{syslog-ng/conf.d,sysconfig,logrotate.d,rc.d/init.d} \
506 $RPM_BUILD_ROOT%{_sysconfdir}/syslog-ng/patterndb.d \
507 $RPM_BUILD_ROOT/var/{log/network,lib/%{name}/xsd}
509 %{__make} -j1 install \
510 pkgconfigdir=%{_pkgconfigdir} \
511 DESTDIR=$RPM_BUILD_ROOT
513 %if "%{slibdir}" != "%{_libdir}"
514 install -d $RPM_BUILD_ROOT%{slibdir}
515 %{__mv} $RPM_BUILD_ROOT%{_libdir}/libsyslog-ng-%{mver}.so.* $RPM_BUILD_ROOT%{slibdir}
516 ln -snf %{slibdir}/$(basename $RPM_BUILD_ROOT%{slibdir}/libsyslog-ng-%{mver}.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libsyslog-ng.so
518 %{__mv} $RPM_BUILD_ROOT%{_libdir}/libevtlog-%{mver}.so.* $RPM_BUILD_ROOT%{slibdir}
519 ln -snf %{slibdir}/$(basename $RPM_BUILD_ROOT%{slibdir}/libevtlog-%{mver}.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libevtlog.so
521 %{__mv} $RPM_BUILD_ROOT%{_libdir}/libloggen_helper-%{mver}.so.* $RPM_BUILD_ROOT%{slibdir}
522 ln -snf %{slibdir}/$(basename $RPM_BUILD_ROOT%{slibdir}/libloggen_helper-%{mver}.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libloggen_helper.so
524 %{__mv} $RPM_BUILD_ROOT%{_libdir}/libloggen_plugin-%{mver}.so.* $RPM_BUILD_ROOT%{slibdir}
525 ln -snf %{slibdir}/$(basename $RPM_BUILD_ROOT%{slibdir}/libloggen_plugin-%{mver}.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libloggen_plugin.so
527 %{__mv} $RPM_BUILD_ROOT%{_libdir}/libsecret-storage.so.* $RPM_BUILD_ROOT%{slibdir}
528 ln -snf %{slibdir}/$(basename $RPM_BUILD_ROOT%{slibdir}/libsecret-storage.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libsecret-storage.so
531 %{__sed} -e 's|@@SBINDIR@@|%{_sbindir}|g' %{SOURCE1} > $RPM_BUILD_ROOT/etc/rc.d/init.d/syslog-ng
532 sed -e 's,#VERSION#,%{mver},' < %{SOURCE2} > $RPM_BUILD_ROOT%{_sysconfdir}/syslog-ng/syslog-ng.conf
533 cp -p %{SOURCE3} $RPM_BUILD_ROOT/etc/logrotate.d/syslog-ng
535 cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/syslog-ng/conf.d
536 cp -p %{SOURCE5} $RPM_BUILD_ROOT/etc/syslog-ng/conf.d
537 cp -p %{SOURCE6} $RPM_BUILD_ROOT/etc/syslog-ng/conf.d
538 cp -p %{SOURCE7} $RPM_BUILD_ROOT/etc/syslog-ng/conf.d
539 cp -p %{SOURCE8} $RPM_BUILD_ROOT/etc/syslog-ng/conf.d
540 cp -p %{SOURCE9} $RPM_BUILD_ROOT/etc/syslog-ng/conf.d
542 for n in cron daemon debug iptables kernel lpr maillog messages secure spooler syslog user xferlog; do
543 > $RPM_BUILD_ROOT/var/log/$n
545 touch $RPM_BUILD_ROOT/etc/sysconfig/%{name}
546 ln -s "%{name}" $RPM_BUILD_ROOT/etc/sysconfig/%{name}@default
548 %{__rm} $RPM_BUILD_ROOT%{_sbindir}/syslog-ng-debun
549 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/syslog-ng-debun.1
550 %{__rm} $RPM_BUILD_ROOT%{moduledir}/libexamples.so
551 %{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la
552 %{__rm} $RPM_BUILD_ROOT%{moduledir}/*.la
553 %{__rm} $RPM_BUILD_ROOT%{moduledir}/loggen/*.la
556 rm -rf $RPM_BUILD_ROOT
559 if [ "$1" = "1" ]; then
560 # disable /proc/kmsg from config on first install on vserver
563 [ "$f" = "VxID:" -o "$f" = "s_context:" ] && break
564 done </proc/self/status
566 if [ -z "$ctx" -o "$ctx" = "0" ]; then
571 if [ "$VSERVER" = "yes" ]; then
572 %{__sed} -i -e '/\/proc\/kmsg/ s/^[^#]/#&/' %{_sysconfdir}/%{name}/%{name}.conf
576 /sbin/chkconfig --add syslog-ng
577 %service syslog-ng restart "syslog-ng daemon"
580 if [ "$1" = "0" ]; then
581 %service syslog-ng stop
582 /sbin/chkconfig --del syslog-ng
585 %triggerun -- syslog-ng < 3.0
586 sed -i -e 's#sync(\(.*\))#flush_lines(\1)#g' /etc/syslog-ng/syslog-ng.conf
587 sed -i -e 's#pipe ("/proc/kmsg"#file ("/proc/kmsg"#g' /etc/syslog-ng/syslog-ng.conf
588 sed -i -e 's#log_prefix#program_override#g' /etc/syslog-ng/syslog-ng.conf
589 sed -i -e 's#^destination #destination d_#g' /etc/syslog-ng/syslog-ng.conf
590 sed -i -e 's#destination(#destination(d_#g' /etc/syslog-ng/syslog-ng.conf
591 sed -i -e 's,\bstats\b,stats_freq,' /etc/syslog-ng/syslog-ng.conf
592 sed -i -e 's#match("IN\=\[A-Za-z0-9\]\* OUT=\[A-Za-z0-9\]\*");#match("IN=[A-Za-z0-9]* OUT=[A-Za-z0-9]*" value("MESSAGE"));#g' /etc/syslog-ng/syslog-ng.conf
593 sed -i -e "1 s#\(.*\)\$#@version: 3.0\n\1#g" /etc/syslog-ng/syslog-ng.conf
594 rm -f %{_var}/lib/%{name}/syslog-ng.persist
595 %service -q syslog-ng restart
597 %post libs -p /sbin/ldconfig
598 %postun libs -p /sbin/ldconfig
600 %post module-grpc -p /sbin/ldconfig
601 %postun module-grpc -p /sbin/ldconfig
604 %defattr(644,root,root,755)
605 %doc AUTHORS NEWS.md contrib/relogger.pl
606 %doc contrib/syslog-ng.conf.{doc,RedHat}
607 %doc contrib/{apparmor,selinux,syslog2ng}
608 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}
609 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}@default
610 %attr(750,root,root) %dir %{_sysconfdir}/syslog-ng
611 %attr(750,root,root) %dir %{_sysconfdir}/syslog-ng/patterndb.d
612 %attr(750,root,root) %dir %{_sysconfdir}/syslog-ng/conf.d
613 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/syslog-ng/syslog-ng.conf
614 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/syslog-ng/conf.d/dhcp.conf
615 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/syslog-ng/conf.d/iptables.conf
616 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/syslog-ng/conf.d/log_remote.conf
617 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/syslog-ng/conf.d/log_server.conf
618 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/syslog-ng/conf.d/freshclam.conf
619 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/syslog-ng/conf.d/ppp.conf
620 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/syslog-ng
621 %attr(754,root,root) /etc/rc.d/init.d/syslog-ng
623 %attr(755,root,root) %{moduledir}/libadd-contextual-data.so
625 %attr(755,root,root) %{moduledir}/libafamqp.so
627 %attr(755,root,root) %{moduledir}/libaffile.so
628 %attr(755,root,root) %{moduledir}/libafprog.so
629 %attr(755,root,root) %{moduledir}/libafsnmp.so
630 %attr(755,root,root) %{moduledir}/libafsocket.so
631 %attr(755,root,root) %{moduledir}/libafstomp.so
632 %attr(755,root,root) %{moduledir}/libafuser.so
633 %attr(755,root,root) %{moduledir}/libappmodel.so
634 %attr(755,root,root) %{moduledir}/libazure-auth-header.so
635 %attr(755,root,root) %{moduledir}/libbasicfuncs.so
636 %attr(755,root,root) %{moduledir}/libcef.so
637 %attr(755,root,root) %{moduledir}/libconfgen.so
638 %attr(755,root,root) %{moduledir}/libcorrelation.so
639 %attr(755,root,root) %{moduledir}/libcryptofuncs.so
640 %attr(755,root,root) %{moduledir}/libcsvparser.so
641 #%attr(755,root,root) %{moduledir}/libdbparser.so
642 %attr(755,root,root) %{moduledir}/libdisk-buffer.so
644 %attr(755,root,root) %{moduledir}/libgeoip2-plugin.so
646 %attr(755,root,root) %{moduledir}/libgraphite.so
647 %attr(755,root,root) %{moduledir}/libhook-commands.so
648 %attr(755,root,root) %{moduledir}/libkvformat.so
649 %attr(755,root,root) %{moduledir}/liblinux-kmsg-format.so
650 %attr(755,root,root) %{moduledir}/libmap-value-pairs.so
651 %attr(755,root,root) %{moduledir}/libmetrics-probe.so
652 %attr(755,root,root) %{moduledir}/libpacctformat.so
653 %attr(755,root,root) %{moduledir}/libpseudofile.so
654 %attr(755,root,root) %{moduledir}/librate-limit-filter.so
655 %attr(755,root,root) %{moduledir}/libregexp-parser.so
656 %attr(755,root,root) %{moduledir}/libsecure-logging.so
657 %attr(755,root,root) %{moduledir}/libstardate.so
658 %attr(755,root,root) %{moduledir}/libtags-parser.so
659 %attr(755,root,root) %{moduledir}/libtfgetent.so
660 %attr(755,root,root) %{moduledir}/libtimestamp.so
661 %attr(755,root,root) %{moduledir}/libxml.so
662 %attr(755,root,root) %{moduledir}/libsyslogformat.so
663 %attr(755,root,root) %{moduledir}/libsystem-source.so
664 %dir %{moduledir}/loggen
665 %attr(755,root,root) %{moduledir}/loggen/libloggen_socket_plugin.so
666 %attr(755,root,root) %{moduledir}/loggen/libloggen_ssl_plugin.so
667 %attr(755,root,root) %{_sbindir}/syslog-ng
668 %attr(755,root,root) %{_sbindir}/syslog-ng-ctl
669 %attr(755,root,root) %{_bindir}/dqtool
670 %attr(755,root,root) %{_bindir}/loggen
671 %attr(755,root,root) %{_bindir}/pdbtool
672 %attr(755,root,root) %{_bindir}/persist-tool
673 %attr(755,root,root) %{_bindir}/slogencrypt
674 %attr(755,root,root) %{_bindir}/slogkey
675 %attr(755,root,root) %{_bindir}/slogverify
676 %attr(755,root,root) %{_bindir}/syslog-ng-update-virtualenv
677 %attr(755,root,root) %{_bindir}/update-patterndb
679 %{_datadir}/syslog-ng/smart-multi-line.fsm
680 %dir %{_datadir}/syslog-ng/include
681 %{_datadir}/syslog-ng/include/scl.conf
682 %dir %{_datadir}/syslog-ng/include/scl
683 %{_datadir}/syslog-ng/include/scl/apache
684 %{_datadir}/syslog-ng/include/scl/arr
685 %{_datadir}/syslog-ng/include/scl/checkpoint
686 %{_datadir}/syslog-ng/include/scl/cisco
688 %{_datadir}/syslog-ng/include/scl/collectd
689 %{_datadir}/syslog-ng/include/scl/darwinosl
690 %{_datadir}/syslog-ng/include/scl/default-network-drivers
691 %{_datadir}/syslog-ng/include/scl/fortigate
692 %{_datadir}/syslog-ng/include/scl/graphite
693 %{_datadir}/syslog-ng/include/scl/hdfs
694 %{_datadir}/syslog-ng/include/scl/kafka
695 %{_datadir}/syslog-ng/include/scl/iptables
696 %{_datadir}/syslog-ng/include/scl/jellyfin
697 %{_datadir}/syslog-ng/include/scl/junos
698 %{_datadir}/syslog-ng/include/scl/linux-audit
699 %dir %{_datadir}/syslog-ng/include/scl/loadbalancer
700 %attr(755,root,root) %{_datadir}/syslog-ng/include/scl/loadbalancer/gen-loadbalancer.sh
701 %{_datadir}/syslog-ng/include/scl/loadbalancer/plugin.conf
702 %{_datadir}/syslog-ng/include/scl/logscale
703 %{_datadir}/syslog-ng/include/scl/mariadb
704 %{_datadir}/syslog-ng/include/scl/mbox
705 %{_datadir}/syslog-ng/include/scl/nodejs
706 %{_datadir}/syslog-ng/include/scl/openobserve
707 %{_datadir}/syslog-ng/include/scl/opensearch
708 %{_datadir}/syslog-ng/include/scl/osquery
709 %{_datadir}/syslog-ng/include/scl/pacct
710 %{_datadir}/syslog-ng/include/scl/paloalto
711 %{_datadir}/syslog-ng/include/scl/pgsql
712 %{_datadir}/syslog-ng/include/scl/pihole
713 %{_datadir}/syslog-ng/include/scl/python
714 %{_datadir}/syslog-ng/include/scl/qbittorrent
715 %{_datadir}/syslog-ng/include/scl/rewrite
716 %{_datadir}/syslog-ng/include/scl/snmptrap
717 %{_datadir}/syslog-ng/include/scl/solaris
718 %{_datadir}/syslog-ng/include/scl/splunk
719 %{_datadir}/syslog-ng/include/scl/sudo
720 %{_datadir}/syslog-ng/include/scl/sumologic
721 %{_datadir}/syslog-ng/include/scl/websense
722 %{_datadir}/syslog-ng/include/scl/windowseventlog
723 %dir %{_datadir}/syslog-ng/include/scl/syslogconf
724 %{_datadir}/syslog-ng/include/scl/syslogconf/README
725 %attr(755,root,root) %{_datadir}/syslog-ng/include/scl/syslogconf/convert-syslogconf.awk
726 %{_datadir}/syslog-ng/include/scl/syslogconf/plugin.conf
727 %{_datadir}/syslog-ng/include/scl/system
728 %{_datadir}/syslog-ng/xsd
730 %dir %{_var}/lib/%{name}
731 %dir %{_var}/lib/%{name}/xsd
732 %{_mandir}/man1/dqtool.1*
733 %{_mandir}/man1/loggen.1*
734 %{_mandir}/man1/pdbtool.1*
735 %{_mandir}/man1/persist-tool.1*
736 %{_mandir}/man1/slogencrypt.1*
737 %{_mandir}/man1/slogkey.1*
738 %{_mandir}/man1/slogverify.1*
739 %{_mandir}/man1/syslog-ng-ctl.1*
740 %{_mandir}/man5/syslog-ng.conf.5*
741 %{_mandir}/man7/secure-logging.7*
742 %{_mandir}/man8/syslog-ng.8*
744 %attr(750,root,root) %dir /var/log/network
745 %attr(640,root,logs) %ghost /var/log/cron
746 %attr(640,root,logs) %ghost /var/log/daemon
747 %attr(640,root,logs) %ghost /var/log/debug
748 %attr(640,root,logs) %ghost /var/log/iptables
749 %attr(640,root,logs) %ghost /var/log/kernel
750 %attr(640,root,logs) %ghost /var/log/lpr
751 %attr(640,root,logs) %ghost /var/log/maillog
752 %attr(640,root,logs) %ghost /var/log/messages
753 %attr(640,root,logs) %ghost /var/log/secure
754 %attr(640,root,logs) %ghost /var/log/spooler
755 %attr(640,root,logs) %ghost /var/log/syslog
756 %attr(640,root,logs) %ghost /var/log/user
757 %attr(640,root,logs) %ghost /var/log/xferlog
760 %files module-afmongodb
761 %defattr(644,root,root,755)
762 %attr(755,root,root) %{moduledir}/libafmongodb.so
767 %defattr(644,root,root,755)
768 %attr(755,root,root) %{moduledir}/libafsmtp.so
773 %defattr(644,root,root,755)
774 %attr(755,root,root) %{moduledir}/libafsql.so
779 %defattr(644,root,root,755)
780 %attr(755,root,root) %{moduledir}/libhttp.so
781 %{_datadir}/syslog-ng/include/scl/telegram
784 %files module-cloudauth
785 %defattr(644,root,root,755)
786 %attr(755,root,root) %{moduledir}/libcloud_auth.so
787 %{_datadir}/syslog-ng/include/scl/google
790 %defattr(644,root,root,755)
791 %attr(755,root,root) %{_libdir}/libgrpc-protos.so.*.*.*
792 %ghost %{_libdir}/libgrpc-protos.so.0
793 %{_libdir}/libgrpc-protos.so
794 %attr(755,root,root) %{moduledir}/libbigquery.so
795 %attr(755,root,root) %{moduledir}/libloki.so
796 %attr(755,root,root) %{moduledir}/libotel.so
799 %files module-json-plugin
800 %defattr(644,root,root,755)
801 %attr(755,root,root) %{moduledir}/libjson-plugin.so
802 # all below configs require json-plugin
803 %{_datadir}/syslog-ng/include/scl/cee
804 # R: basicfuncs http json-plugin
805 %{_datadir}/syslog-ng/include/scl/discord
806 %{_datadir}/syslog-ng/include/scl/cim
807 # R: http json-plugin
808 %{_datadir}/syslog-ng/include/scl/elasticsearch
809 %{_datadir}/syslog-ng/include/scl/ewmm
810 %{_datadir}/syslog-ng/include/scl/graylog2
811 %{_datadir}/syslog-ng/include/scl/loggly
812 %{_datadir}/syslog-ng/include/scl/logmatic
813 %{_datadir}/syslog-ng/include/scl/netskope
814 # R: basicfuncs http json-plugin
815 %{_datadir}/syslog-ng/include/scl/slack
820 %defattr(644,root,root,755)
821 %attr(755,root,root) %{moduledir}/libkafka.so
826 %defattr(644,root,root,755)
827 %attr(755,root,root) %{moduledir}/libmqtt.so
832 %defattr(644,root,root,755)
833 %attr(755,root,root) %{moduledir}/libmod-python.so
839 %defattr(644,root,root,755)
840 %attr(755,root,root) %{moduledir}/libredis.so
844 %files module-riemann
845 %defattr(644,root,root,755)
846 %attr(755,root,root) %{moduledir}/libriemann.so
850 %defattr(644,root,root,755)
851 %attr(755,root,root) %{slibdir}/libevtlog-%{mver}.so.*.*.*
852 %attr(755,root,root) %{slibdir}/libevtlog-%{mver}.so.0
853 %attr(755,root,root) %{slibdir}/libloggen_helper-%{mver}.so.*.*.*
854 %attr(755,root,root) %{slibdir}/libloggen_helper-%{mver}.so.0
855 %attr(755,root,root) %{slibdir}/libloggen_plugin-%{mver}.so.*.*.*
856 %attr(755,root,root) %{slibdir}/libloggen_plugin-%{mver}.so.0
857 %attr(755,root,root) %{slibdir}/libsecret-storage.so.*.*.*
858 %attr(755,root,root) %{slibdir}/libsecret-storage.so.0
859 %attr(755,root,root) %{slibdir}/libsyslog-ng-%{mver}.so.*.*.*
860 %attr(755,root,root) %ghost %{slibdir}/libsyslog-ng-%{mver}.so.0
861 %dir %{_datadir}/syslog-ng
864 %defattr(644,root,root,755)
865 %attr(755,root,root) %{_libdir}/libevtlog.so
866 %attr(755,root,root) %{_libdir}/libloggen_helper.so
867 %attr(755,root,root) %{_libdir}/libloggen_plugin.so
868 %attr(755,root,root) %{_libdir}/libsecret-storage.so
869 %attr(755,root,root) %{_libdir}/libsyslog-ng.so
870 %{_libdir}/libsyslog-ng-native-connector.a
871 %{_includedir}/syslog-ng
872 %exclude %{_includedir}/syslog-ng/libtest
873 %{_datadir}/syslog-ng/tools
874 %{_pkgconfigdir}/syslog-ng.pc
875 %{_pkgconfigdir}/syslog-ng-native-connector.pc
879 %defattr(644,root,root,755)
880 %if "%{_libdir}/syslog-ng" != "{moduledir}"
881 %dir %{_libdir}/syslog-ng
883 %dir %{_libdir}/syslog-ng/libtest
884 %{_libdir}/syslog-ng/libtest/libsyslog-ng-test.a
885 %{_includedir}/syslog-ng/libtest
886 %{_pkgconfigdir}/syslog-ng-test.pc