]> TLD Linux GIT Repositories - packages/syslog-ng.git/blob - syslog-ng.spec
- updated to 4.6.0
[packages/syslog-ng.git] / syslog-ng.spec
1 # TODO:
2 # - switch to LTS version??? where???
3 # - relies on libs in /usr which is wrong
4 #   (well, for modules bringing additional functionality it's acceptable IMO --q)
5 # - package python module
6 #
7 # Conditional build:
8 %bcond_with     dynamic                 # link dynamically with glib, eventlog, pcre (modules are always linked dynamically)
9 %bcond_without  sql                     # support for logging to SQL DB
10 %bcond_with     tests                   # do not perform "make check"
11 %bcond_without  http                    # support for HTTP destination
12 %bcond_without  json                    # support for JSON template formatting
13 %bcond_without  mongodb                 # support for mongodb destination
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  riemann                 # support for Riemann monitoring system
18 %bcond_without  amqp                    # AMQP support
19 %bcond_with     python                  # python module
20 %bcond_with     java                    # java modules and support
21 %bcond_without  system_libivykis        # use system libivykis
22 %bcond_without  system_rabbitmq         # use system librabbitmq
23
24 %if %{without amqp}
25 %undefine with_system_rabbitmq
26 %endif
27
28 # as in git submodule
29 %define libivykis_version 0.42.4
30
31 %define         glib2_ver       1:2.32.0
32 %define         mver    4.6
33 %define         docmver 4.6
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
37 Name:           syslog-ng
38 Version:        4.6.0
39 Release:        1
40 License:        GPL v2+ with OpenSSL exception
41 Group:          Daemons
42 Source0:        https://github.com/balabit/syslog-ng/archive/%{name}-%{version}.tar.gz
43 # Source0-md5:  389d1d5d5b6af8e73d5b6caa37ae1bfe
44 Source1:        %{name}.init
45 Source2:        %{name}.conf
46 Source3:        %{name}.logrotate
47 Source4:        https://syslog-ng.com/documents/html/syslog-ng-ose-%{docmver}-guides/en/syslog-ng-ose-guide-admin/pdf/syslog-ng-ose-guide-admin.pdf
48 # Source4-md5:  46b021e8b47ddbe15bfc9134aa54c183
49 Source5:        %{name}-simple.conf
50 Source6:        https://github.com/buytenh/ivykis/archive/v%{libivykis_version}/ivykis-%{libivykis_version}.tar.gz
51 # Source6-md5:  e09caeb95a01a541ec40d3b757dada12
52 Patch0:         %{name}-datadir.patch
53 Patch1:         %{name}-nolibs.patch
54 Patch2:         man-paths.patch
55 Patch3:         %{name}-link.patch
56 Patch4:         no_shared_ivykis.patch
57 Patch5:         bison.patch
58 Patch6:         shebang.patch
59 URL:            https://syslog-ng.org/
60 BuildRequires:  autoconf >= 2.59
61 BuildRequires:  automake
62 BuildRequires:  bison >= 3.7.6
63 %{?with_http:BuildRequires:     curl-devel}
64 BuildRequires:  docbook-style-xsl
65 %{?with_tests:BuildRequires:    findutils}
66 BuildRequires:  flex
67 BuildRequires:  glib2-devel >= %{glib2_ver}
68 %{?with_redis:BuildRequires:    hiredis-devel >= 0.11.0}
69 %{?with_java:BuildRequires:     jdk >= 1.8}
70 %{?with_json:BuildRequires:     json-c-devel >= 0.13}
71 %{?with_java:BuildRequires:     gradle >= 3.4}
72 %{?with_mongodb:BuildRequires:  libbson-devel}
73 BuildRequires:  libcap-devel
74 %{?with_sql:BuildRequires:      libdbi-devel >= 0.9.0}
75 %{?with_smtp:BuildRequires:     libesmtp-devel}
76 %{?with_system_libivykis:BuildRequires: libivykis-devel >= %{libivykis_version}}
77 %{?with_mongodb:BuildRequires:  mongo-c-driver-devel}
78 %{?with_geoip2:BuildRequires:   libmaxminddb-devel}
79 BuildRequires:  libnet-devel >= 1:1.1.2.1-3
80 %{?with_java:BuildRequires:     librdkafka-devel >= 1.1.0}
81 BuildRequires:  libtool >= 2:2.0
82 BuildRequires:  libwrap-devel
83 BuildRequires:  libxslt-progs
84 BuildRequires:  lz4-devel >= r131-5
85 BuildRequires:  openssl-devel >= 0.9.8
86 BuildRequires:  pcre2-8-devel >= 10.0
87 BuildRequires:  pkgconfig
88 %{?with_system_rabbitmq:BuildRequires:  rabbitmq-c-devel >= 0.5.3}
89 %{?with_riemann:BuildRequires:  riemann-c-client-devel >= 1.0.0}
90 BuildRequires:  rpm >= 4.4.9-56
91 BuildRequires:  rpmbuild(macros) >= 1.623
92 BuildRequires:  which
93 %if %{with tests}
94 BuildRequires:  GeoIP-db-Country
95 BuildRequires:  pylint
96 BuildRequires:  python
97 BuildRequires:  python-pep8
98 BuildRequires:  python-ply
99 BuildRequires:  tzdata
100 %endif
101 %if %{without dynamic}
102 BuildRequires:  glib2-static >= %{glib2_ver}
103 %{?with_system_libivykis:BuildRequires: libivykis-static >= %{libivykis_version}}
104 BuildRequires:  pcre-static >= 6.1
105 BuildRequires:  zlib-static
106 %endif
107 Requires(post): fileutils
108 Requires(post,preun):   /sbin/chkconfig
109 Requires:       %{name}-libs = %{version}-%{release}
110 Requires:       psmisc >= 20.1
111 %{?with_system_rabbitmq:Requires:       rabbitmq-c >= 0.0.1}
112 Requires:       rc-scripts >= 0.4.3.0
113 # for afsocket
114 Requires:       libnet >= 1:1.1.2.1-7
115 Requires:       openssl >= 0.9.8
116 Provides:       service(klogd)
117 Provides:       service(syslog)
118 Provides:       syslogdaemon
119 Obsoletes:      syslog-ng-module-afsocket
120 Obsoletes:      syslog-ng-module-dbparser
121 Obsoletes:      syslog-ng-module-tfgeoip
122 Obsoletes:      syslog-ng-systemd
123 Conflicts:      klogd
124 Conflicts:      msyslog
125 Conflicts:      rsyslog
126 Conflicts:      syslog
127 Conflicts:      cronie < 1.5.0-3
128 Conflicts:      fcron < 3.1.2-5
129 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
130
131 %define xsl_stylesheets_dir /usr/share/sgml/docbook/xsl-stylesheets
132
133 %if %{without dynamic}
134 # syslog-ng has really crazy linking rules (see their bugzilla).
135 # Some rules, according to syslog-ng devs, are like this:
136 # - libsyslog-ng.so has undefined symbols for third party libraries
137 #   and these symbols should go via main syslog-ng binary
138 # - same applies for modules
139 # In dynamic case tests are forcily linked with dynamic modules, which doesn't work with as-needed.
140 %define         filterout_ld                    -Wl,--as-needed -Wl,--no-copy-dt-needed-entries
141 %define         no_install_post_check_so        1
142 %define         _sbindir                        /sbin
143 %define         slibdir                         /%{_lib}
144 %else
145 %define         slibdir                         %{_libdir}
146 %endif
147 # or just %{_libdir}? modules seem to be always linked dynamically
148 %define         moduledir                       %{slibdir}/syslog-ng
149
150 %description
151 syslog-ng is a syslogd replacement for Unix and Unix-like systems. It
152 has been tested on Solaris, BSDi and Linux, and were found to run
153 reliably. syslog-ng gives you a much enhanced configuration scheme,
154 which lets you filter messages based on not only priority/facility
155 pairs, but also on message content. You can use regexps to direct log
156 stream to different destinations. A destination can be anything from a
157 simple file to a network connection. syslog-ng supports TCP
158 logforwarding, together with hashing to prevent unauthorized
159 modification on the line.
160
161 %description -l pl.UTF-8
162 Syslog-ng jest zamiennikiem dla standardowo używanych programów typu
163 syslog. Działa w systemie SunOS, BSD, Linux. Daje znacznie większe
164 możliwości logowania i kontrolowania zbieranych informacji.
165
166 %description -l pt_BR.UTF-8
167 Syslog-ng é um substituto para o syslog tradicional, mas com diversas
168 melhorias, como, por exemplo, a habilidade de filtrar mensagens de log
169 por seu conteúdo (usando expressões regulares) e não apenas pelo par
170 facility/prioridade como o syslog original.
171
172 %package module-afmongodb
173 Summary:        MongoDB destination support module for syslog-ng
174 Summary(pl.UTF-8):      Moduł sysloga-ng do obsługi zapisu logów w bazie MongoDB
175 Group:          Libraries
176 Requires:       %{name} = %{version}-%{release}
177 Requires:       libmongo-client >= 0.1.8
178
179 %description module-afmongodb
180 MongoDB destination support module for syslog-ng.
181
182 %description module-afmongodb -l pl.UTF-8
183 Moduł sysloga-ng do obsługi zapisu logów w bazie MongoDB.
184
185 %package module-afsmtp
186 Summary:        SMTP output support module for syslog-ng
187 Summary(pl.UTF-8):      Moduł sysloga-ng do obsługi wysyłania logów do serwerów SMTP
188 Group:          Libraries
189 Requires:       %{name} = %{version}-%{release}
190 Requires:       openssl >= 0.9.8
191
192 %description module-afsmtp
193 SMTP output support module for syslog-ng.
194
195 %description module-afsmtp -l pl.UTF-8
196 Moduł sysloga-ng do obsługi wysyłania logów do serwerów SMTP.
197
198 %package module-afsql
199 Summary:        SQL destination support module for syslog-ng
200 Summary(pl.UTF-8):      Moduł sysloga-ng do obsługi zapisu logów w bazach SQL
201 Group:          Libraries
202 Requires:       %{name} = %{version}-%{release}
203 Requires:       libdbi >= 0.8.3-2
204 Requires:       openssl >= 0.9.8
205
206 %description module-afsql
207 SQL destination support module for syslog-ng (via libdbi).
208
209 %description module-afsql -l pl.UTF-8
210 Moduł sysloga-ng do obsługi zapisu logów w bazach SQL (poprzez
211 libdbi).
212
213 %package module-http
214 Summary:        HTTP destination support module for syslog-ng
215 Summary(pl.UTF-8):      Moduł sysloga-ng do obsługi zapisu logów poprzez HTTP
216 Group:          Libraries
217 Requires:       %{name} = %{version}-%{release}
218
219 %description module-http
220 HTTP destination support module for syslog-ng (via libcurl).
221
222 %description module-http -l pl.UTF-8
223 Moduł sysloga-ng do obsługi zapisu logów poprzez HTTP (via libcurl).
224
225 %package module-java
226 Summary:        Java destination support module for syslog-ng
227 Summary(pl.UTF-8):      Moduł sysloga-ng do obsługi zapisu logów przy pomocy Java
228 Group:          Libraries
229 Requires:       %{name} = %{version}-%{release}
230 Requires:       librdkafka >= 1.1.0
231 Requires:       %{name}-module-json-plugin = %{version}-%{release}
232
233 %description module-java
234 Java destination support module for syslog-ng
235
236 %description module-java -l pl.UTF-8
237 Moduł sysloga-ng do obsługi zapisu logów przy pomocy Java
238
239 %package module-json-plugin
240 Summary:        JSON formatting template function for syslog-ng
241 Summary(pl.UTF-8):      Moduł sysloga-ng do obsługi szablonów z formatowaniem JSON
242 Group:          Libraries
243 Requires:       %{name} = %{version}-%{release}
244 Requires:       json-c >= 0.9
245 Obsoletes:      syslog-ng-module-tfjson
246
247 %description module-json-plugin
248 JSON formatting template function for syslog-ng.
249
250 %description module-json-plugin -l pl.UTF-8
251 Moduł sysloga-ng do obsługi szablonów z formatowaniem JSON.
252
253 %package module-python
254 Summary:        Python destination support module for syslog-ng
255 Summary(pl.UTF-8):      Moduł sysloga-ng do obsługi zapisu logów przy pomocy pythona
256 Group:          Libraries
257 Requires:       %{name} = %{version}-%{release}
258 Requires:       python3
259
260 %description module-python
261 Python destination support module for syslog-ng
262
263 %description module-python -l pl.UTF-8
264 Moduł sysloga-ng do obsługi zapisu logów przy pomocy pythona
265
266 %package module-redis
267 Summary:        Redis destination support module for syslog-ng
268 Summary(pl.UTF-8):      Moduł sysloga-ng do obsługi zapisu logów w bazie Redis
269 Group:          Libraries
270 Requires:       %{name} = %{version}-%{release}
271
272 %description module-redis
273 Redis destination support module for syslog-ng (via libhiredis).
274
275 %description module-redis -l pl.UTF-8
276 Moduł sysloga-ng do obsługi zapisu logów w bazie Redis (poprzez
277 libhiredis).
278
279 %package module-riemann
280 Summary:        Riemann destination support module for syslog-ng
281 Summary(pl.UTF-8):      Moduł sysloga-ng do obsługi zapisu logów do systemu Riemann
282 Group:          Libraries
283 Requires:       %{name} = %{version}-%{release}
284 Requires:       riemann-c-client >= 1.0.0
285
286 %description module-riemann
287 Riemann destination support module for syslog-ng.
288
289 %description module-riemann -l pl.UTF-8
290 Moduł sysloga-ng do obsługi zapisu logów do systemu Riemann.
291
292 %package libs
293 Summary:        Shared library for syslog-ng
294 Summary(pl.UTF-8):      Biblioteka współdzielona sysloga-ng
295 Group:          Libraries
296 %if %{with dynamic}
297 Requires:       glib2 >= %{glib2_ver}
298 %{?with_system_libivykis:Requires:      libivykis >= 0.42}
299 Requires:       pcre >= 6.1
300 %endif
301 Conflicts:      syslog-ng < 3.3.1-3
302
303 %description libs
304 Shared library for syslog-ng.
305
306 %description libs -l pl.UTF-8
307 Biblioteka współdzielona sysloga-ng.
308
309 %package devel
310 Summary:        Header files for syslog-ng modules development
311 Summary(pl.UTF-8):      Pliki nagłówkowe do tworzenia modułów dla sysloga-ng
312 Group:          Development/Libraries
313 Requires:       %{name}-libs = %{version}-%{release}
314 %if %{with dynamic}
315 Requires:       glib2-devel >= %{glib2_ver}
316 %{?with_system_libivykis:Requires:      libivykis-devel >= 0.42}
317 Requires:       pcre-devel >= 6.1
318 %endif
319
320 %description devel
321 Header files for syslog-ng modules development.
322
323 %description devel -l pl.UTF-8
324 Pliki nagłówkowe do tworzenia modułów dla sysloga-ng.
325
326 %prep
327 %setup -q -n %{name}-%{name}-%{version} -a 6
328
329 rmdir lib/ivykis
330 mv ivykis-%{libivykis_version} lib/ivykis
331
332 %patch0 -p1
333 %patch1 -p1
334 %patch2 -p1
335 %patch3 -p1
336 %patch4 -p1
337 %patch5 -p1
338 %patch6 -p1
339 cp -p %{SOURCE4} doc
340 cp -p %{SOURCE5} contrib/syslog-ng.conf.simple
341
342 %{__sed} -i -e 's|/usr/bin/awk|/bin/awk|' scl/syslogconf/convert-syslogconf.awk
343
344 %build
345 %{__libtoolize}
346 %{__aclocal} -I m4
347 %{__autoconf}
348 %{__autoheader}
349 %{__automake}
350 %configure \
351         --sysconfdir=%{_sysconfdir}/syslog-ng \
352         --disable-silent-rules \
353         --with-docbook=%{xsl_stylesheets_dir}/manpages/docbook.xsl \
354         --enable-java%{!?with_java:=no} \
355         --enable-java-modules%{!?with_java:=no} \
356         --enable-python%{!?with_python:=no} \
357 %if %{with mongodb}
358         --enable-mongodb \
359         --with-mongoc=system \
360 %else
361         --disable-mongodb \
362 %endif
363 %if %{with system_libivykis}
364         --with-ivykis=system \
365 %else
366         --with-ivykis=internal \
367 %endif
368         %{?with_system_rabbitmq:--with-librabbitmq-client=system} \
369         --with-module-dir=%{moduledir} \
370         --with-pidfile-dir=/var/run \
371         --with-timezone-dir=%{_datadir}/zoneinfo \
372         --with-python-packages=none \
373         %{__enable_disable amqp} \
374         --disable-cloud-auth \
375         %{__enable_disable geoip2} \
376         --enable-http%{!?with_http:=no} \
377         --enable-ipv6 \
378         --enable-json%{!?with_json:=no} \
379         %{__enable_disable java kafka} \
380         --enable-linux-caps \
381         --enable-manpages \
382         --enable-pacct \
383         --enable-pcre \
384         --enable-redis%{!?with_redis:=no} \
385         --enable-riemann%{!?with_riemann:=no} \
386         --enable-smtp%{!?with_smtp:=no} \
387         --enable-spoof-source \
388         --enable-ssl \
389         --disable-systemd \
390         --enable-tcp-wrapper \
391 %if %{with sql}
392         --enable-sql \
393 %endif
394 %if %{with dynamic}
395         --enable-dynamic-linking
396 %else
397         --enable-mixed-linking
398 %endif
399
400 %{__make}
401
402 %if %{with tests}
403 LD_LIBRARY_PATH=$(find $PWD -name '*.so*' -printf "%h:")
404 PYTHONPATH=$(pwd)/tests/functional
405 export LD_LIBRARY_PATH PYTHONPATH
406 %{__make} check
407 %endif
408
409 %install
410 rm -rf $RPM_BUILD_ROOT
411 install -d $RPM_BUILD_ROOT/etc/{sysconfig,logrotate.d,rc.d/init.d} \
412         $RPM_BUILD_ROOT%{_sysconfdir}/syslog-ng/patterndb.d \
413         $RPM_BUILD_ROOT/var/{log,lib/%{name}/xsd}
414
415 %{__make} -j1 install \
416         pkgconfigdir=%{_pkgconfigdir} \
417         DESTDIR=$RPM_BUILD_ROOT
418
419 %if "%{slibdir}" != "%{_libdir}"
420 install -d $RPM_BUILD_ROOT%{slibdir}
421 %{__mv} $RPM_BUILD_ROOT%{_libdir}/libsyslog-ng-%{mver}.so.* $RPM_BUILD_ROOT%{slibdir}
422 ln -snf %{slibdir}/$(basename $RPM_BUILD_ROOT%{slibdir}/libsyslog-ng-%{mver}.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libsyslog-ng.so
423
424 %{__mv} $RPM_BUILD_ROOT%{_libdir}/libevtlog-%{mver}.so.* $RPM_BUILD_ROOT%{slibdir}
425 ln -snf %{slibdir}/$(basename $RPM_BUILD_ROOT%{slibdir}/libevtlog-%{mver}.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libevtlog.so
426
427 %{__mv} $RPM_BUILD_ROOT%{_libdir}/libsecret-storage.so.* $RPM_BUILD_ROOT%{slibdir}
428 ln -snf %{slibdir}/$(basename $RPM_BUILD_ROOT%{slibdir}/libsecret-storage.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libsecret-storage.so
429
430 %{__mv} $RPM_BUILD_ROOT%{_libdir}/libloggen_helper-%{mver}.so.* $RPM_BUILD_ROOT%{slibdir}
431 ln -snf %{slibdir}/$(basename $RPM_BUILD_ROOT%{slibdir}/libloggen_helper-%{mver}.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libloggen_helper.so
432
433 %{__mv} $RPM_BUILD_ROOT%{_libdir}/libloggen_plugin-%{mver}.so.* $RPM_BUILD_ROOT%{slibdir}
434 ln -snf %{slibdir}/$(basename $RPM_BUILD_ROOT%{slibdir}/libloggen_plugin-%{mver}.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libloggen_plugin.so
435 %endif
436
437 %{__sed} -e 's|@@SBINDIR@@|%{_sbindir}|g' %{SOURCE1} > $RPM_BUILD_ROOT/etc/rc.d/init.d/syslog-ng
438 cp -p %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/syslog-ng/syslog-ng.conf
439 cp -p %{SOURCE3} $RPM_BUILD_ROOT/etc/logrotate.d/syslog-ng
440
441 for n in cron daemon debug kernel lpr maillog messages secure shorewall spooler syslog user xferlog; do
442         > $RPM_BUILD_ROOT/var/log/$n
443 done
444 touch $RPM_BUILD_ROOT/etc/sysconfig/%{name}
445 ln -s "%{name}" $RPM_BUILD_ROOT/etc/sysconfig/%{name}@default
446
447 %{__rm} $RPM_BUILD_ROOT%{_sbindir}/syslog-ng-debun
448 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/syslog-ng-debun.1
449 %{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la
450 %{__rm} $RPM_BUILD_ROOT%{moduledir}/*.la
451 %{__rm} $RPM_BUILD_ROOT%{moduledir}/loggen/*.la
452
453 %if %{with python}
454 %{__rm} -rf $RPM_BUILD_ROOT%{_sysconfdir}/syslog-ng/python
455 %else
456 %{__rm} $RPM_BUILD_ROOT%{_bindir}/syslog-ng-update-virtualenv
457 %endif
458
459 %if !%{with java}
460 %{__rm} -rf $RPM_BUILD_ROOT%{_datadir}/syslog-ng/include/scl/{elasticsearch,hdfs,kafka}
461 %endif
462
463 %clean
464 rm -rf $RPM_BUILD_ROOT
465
466 %post
467 if [ "$1" = "1" ]; then
468         # disable /proc/kmsg from config on first install on vserver
469         {
470                 while read f ctx; do
471                         [ "$f" = "VxID:" -o "$f" = "s_context:" ] && break
472                 done </proc/self/status
473         } 2>/dev/null
474         if [ -z "$ctx" -o "$ctx" = "0" ]; then
475                 VSERVER=no
476         else
477                 VSERVER=yes
478         fi
479         if [ "$VSERVER" = "yes" ]; then
480                 %{__sed} -i -e '/\/proc\/kmsg/ s/^[^#]/#&/' %{_sysconfdir}/%{name}/%{name}.conf
481         fi
482 fi
483
484 /sbin/chkconfig --add syslog-ng
485 %service syslog-ng restart "syslog-ng daemon"
486
487 %preun
488 if [ "$1" = "0" ]; then
489         %service syslog-ng stop
490         /sbin/chkconfig --del syslog-ng
491 fi
492
493 %triggerun -- syslog-ng < 3.0
494 sed -i -e 's#sync(\(.*\))#flush_lines(\1)#g' /etc/syslog-ng/syslog-ng.conf
495 sed -i -e 's#pipe ("/proc/kmsg"#file ("/proc/kmsg"#g' /etc/syslog-ng/syslog-ng.conf
496 sed -i -e 's#log_prefix#program_override#g' /etc/syslog-ng/syslog-ng.conf
497 sed -i -e 's#^destination #destination d_#g' /etc/syslog-ng/syslog-ng.conf
498 sed -i -e 's#destination(#destination(d_#g' /etc/syslog-ng/syslog-ng.conf
499 sed -i -e 's,\bstats\b,stats_freq,' /etc/syslog-ng/syslog-ng.conf
500 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
501 sed -i -e "1 s#\(.*\)\$#@version: 3.0\n\1#g" /etc/syslog-ng/syslog-ng.conf
502 rm -f %{_var}/lib/%{name}/syslog-ng.persist
503 %service -q syslog-ng restart
504 exit 0
505
506 %post   libs -p /sbin/ldconfig
507 %postun libs -p /sbin/ldconfig
508
509 %files
510 %defattr(644,root,root,755)
511 %doc AUTHORS NEWS.md contrib/relogger.pl
512 %doc contrib/syslog-ng.conf.{doc,simple,RedHat}
513 %doc contrib/{apparmor,selinux,syslog2ng} doc/syslog-ng-ose-guide-admin.pdf
514 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}
515 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}@default
516 %attr(750,root,root) %dir %{_sysconfdir}/syslog-ng
517 %attr(750,root,root) %dir %{_sysconfdir}/syslog-ng/patterndb.d
518 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/syslog-ng/syslog-ng.conf
519 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/syslog-ng
520 %attr(754,root,root) /etc/rc.d/init.d/syslog-ng
521 %dir %{moduledir}
522 %attr(755,root,root) %{moduledir}/libadd-contextual-data.so
523 %if %{with amqp}
524 %attr(755,root,root) %{moduledir}/libafamqp.so
525 %endif
526 %attr(755,root,root) %{moduledir}/libaffile.so
527 %attr(755,root,root) %{moduledir}/libafprog.so
528 %attr(755,root,root) %{moduledir}/libafsnmp.so
529 %attr(755,root,root) %{moduledir}/libafsocket.so
530 %attr(755,root,root) %{moduledir}/libafstomp.so
531 %attr(755,root,root) %{moduledir}/libafuser.so
532 %attr(755,root,root) %{moduledir}/libappmodel.so
533 %attr(755,root,root) %{moduledir}/libazure-auth-header.so
534 %attr(755,root,root) %{moduledir}/libbasicfuncs.so
535 %attr(755,root,root) %{moduledir}/libcef.so
536 %attr(755,root,root) %{moduledir}/libconfgen.so
537 %attr(755,root,root) %{moduledir}/libcorrelation.so
538 %attr(755,root,root) %{moduledir}/libcryptofuncs.so
539 %attr(755,root,root) %{moduledir}/libcsvparser.so
540 %attr(755,root,root) %{moduledir}/libdisk-buffer.so
541 %attr(755,root,root) %{moduledir}/libexamples.so
542 %if %{with geoip2}
543 %attr(755,root,root) %{moduledir}/libgeoip2-plugin.so
544 %endif
545 %attr(755,root,root) %{moduledir}/libgraphite.so
546 %attr(755,root,root) %{moduledir}/libhook-commands.so
547 %attr(755,root,root) %{moduledir}/libkvformat.so
548 %attr(755,root,root) %{moduledir}/liblinux-kmsg-format.so
549 %attr(755,root,root) %{moduledir}/libmetrics-probe.so
550 %dir %{moduledir}/loggen
551 %attr(755,root,root) %{moduledir}/loggen/libloggen_socket_plugin.so
552 %attr(755,root,root) %{moduledir}/loggen/libloggen_ssl_plugin.so
553 %attr(755,root,root) %{moduledir}/libmap-value-pairs.so
554 %attr(755,root,root) %{moduledir}/libpacctformat.so
555 %attr(755,root,root) %{moduledir}/libpseudofile.so
556 %attr(755,root,root) %{moduledir}/librate-limit-filter.so
557 %attr(755,root,root) %{moduledir}/libregexp-parser.so
558 %attr(755,root,root) %{moduledir}/libsecure-logging.so
559 %attr(755,root,root) %{moduledir}/libstardate.so
560 %attr(755,root,root) %{moduledir}/libtags-parser.so
561 %attr(755,root,root) %{moduledir}/libtfgetent.so
562 %attr(755,root,root) %{moduledir}/libtimestamp.so
563 %attr(755,root,root) %{moduledir}/libxml.so
564 %attr(755,root,root) %{moduledir}/libsyslogformat.so
565 %attr(755,root,root) %{moduledir}/libsystem-source.so
566 %attr(755,root,root) %{_sbindir}/syslog-ng
567 %attr(755,root,root) %{_sbindir}/syslog-ng-ctl
568 %attr(755,root,root) %{_bindir}/dqtool
569 %attr(755,root,root) %{_bindir}/loggen
570 %attr(755,root,root) %{_bindir}/pdbtool
571 %attr(755,root,root) %{_bindir}/persist-tool
572 %attr(755,root,root) %{_bindir}/slogencrypt
573 %attr(755,root,root) %{_bindir}/slogkey
574 %attr(755,root,root) %{_bindir}/slogverify
575 %attr(755,root,root) %{_bindir}/update-patterndb
576 %if %{with python}
577 %attr(755,root,root) %{_bindir}/syslog-ng-update-virtualenv
578 %endif
579
580 %dir %{_datadir}/syslog-ng/include
581 %dir %{_datadir}/syslog-ng/include/scl
582 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_datadir}/syslog-ng/include/scl.conf
583 %{_datadir}/syslog-ng/include/scl/apache
584 %{_datadir}/syslog-ng/include/scl/checkpoint
585 %{_datadir}/syslog-ng/include/scl/cisco
586 %{_datadir}/syslog-ng/include/scl/collectd
587 %{_datadir}/syslog-ng/include/scl/darwinosl
588 %{_datadir}/syslog-ng/include/scl/default-network-drivers
589 %{_datadir}/syslog-ng/include/scl/fortigate
590 %{_datadir}/syslog-ng/include/scl/graphite
591 %{_datadir}/syslog-ng/include/scl/iptables
592 %{_datadir}/syslog-ng/include/scl/junos
593 %{_datadir}/syslog-ng/include/scl/linux-audit
594
595 %dir %{_datadir}/syslog-ng/include/scl/loadbalancer
596 %attr(755,root,root) %{_datadir}/syslog-ng/include/scl/loadbalancer/gen-loadbalancer.sh
597 %{_datadir}/syslog-ng/include/scl/loadbalancer/plugin.conf
598
599 %{_datadir}/syslog-ng/include/scl/mariadb
600 %{_datadir}/syslog-ng/include/scl/mbox
601 %{_datadir}/syslog-ng/include/scl/nodejs
602 %{_datadir}/syslog-ng/include/scl/osquery
603 %{_datadir}/syslog-ng/include/scl/pacct
604 %{_datadir}/syslog-ng/include/scl/paloalto
605 %{_datadir}/syslog-ng/include/scl/pgsql
606 %{_datadir}/syslog-ng/include/scl/pihole
607 %{_datadir}/syslog-ng/include/scl/python
608 %{_datadir}/syslog-ng/include/scl/qbittorrent
609 %{_datadir}/syslog-ng/include/scl/rewrite
610 %{_datadir}/syslog-ng/include/scl/snmptrap
611 %{_datadir}/syslog-ng/include/scl/solaris
612 %{_datadir}/syslog-ng/include/scl/sudo
613 %{_datadir}/syslog-ng/include/scl/websense
614 %{_datadir}/syslog-ng/include/scl/windowseventlog
615 %dir %{_datadir}/syslog-ng/include/scl/syslogconf
616 %{_datadir}/syslog-ng/include/scl/syslogconf/README
617 %attr(755,root,root) %{_datadir}/syslog-ng/include/scl/syslogconf/convert-syslogconf.awk
618 %{_datadir}/syslog-ng/include/scl/syslogconf/plugin.conf
619 %{_datadir}/syslog-ng/include/scl/system
620 %{_datadir}/syslog-ng/smart-multi-line.fsm
621 %{_datadir}/syslog-ng/xsd
622
623 %dir %{_var}/lib/%{name}
624 %dir %{_var}/lib/%{name}/xsd
625 %{_mandir}/man1/dqtool.1*
626 %{_mandir}/man1/loggen.1*
627 %{_mandir}/man1/pdbtool.1*
628 %{_mandir}/man1/slogencrypt.1*
629 %{_mandir}/man1/slogkey.1*
630 %{_mandir}/man1/slogverify.1*
631 %{_mandir}/man1/persist-tool.1*
632 %{_mandir}/man7/secure-logging.7*
633 %{_mandir}/man1/syslog-ng-ctl.1*
634 %{_mandir}/man5/syslog-ng.conf.5*
635 %{_mandir}/man8/syslog-ng.8*
636
637 %attr(640,root,logs) %ghost /var/log/cron
638 %attr(640,root,logs) %ghost /var/log/daemon
639 %attr(640,root,logs) %ghost /var/log/debug
640 %attr(640,root,logs) %ghost /var/log/kernel
641 %attr(640,root,logs) %ghost /var/log/lpr
642 %attr(640,root,logs) %ghost /var/log/maillog
643 %attr(640,root,logs) %ghost /var/log/messages
644 %attr(640,root,logs) %ghost /var/log/secure
645 %attr(640,root,logs) %ghost /var/log/shorewall
646 %attr(640,root,logs) %ghost /var/log/spooler
647 %attr(640,root,logs) %ghost /var/log/syslog
648 %attr(640,root,logs) %ghost /var/log/user
649 %attr(640,root,logs) %ghost /var/log/xferlog
650
651 %if %{with mongodb}
652 %files module-afmongodb
653 %defattr(644,root,root,755)
654 %attr(755,root,root) %{moduledir}/libafmongodb.so
655 %endif
656
657 %if %{with smtp}
658 %files module-afsmtp
659 %defattr(644,root,root,755)
660 %attr(755,root,root) %{moduledir}/libafsmtp.so
661 %endif
662
663 %if %{with sql}
664 %files module-afsql
665 %defattr(644,root,root,755)
666 %attr(755,root,root) %{moduledir}/libafsql.so
667 %endif
668
669 %if %{with http}
670 %files module-http
671 %defattr(644,root,root,755)
672 %attr(755,root,root) %{moduledir}/libhttp.so
673 %{_datadir}/syslog-ng/include/scl/telegram
674 %endif
675
676 %if %{with java}
677 %files module-java
678 %defattr(644,root,root,755)
679 %attr(755,root,root) %{moduledir}/libkafka.so
680 %attr(755,root,root) %{moduledir}/libmod-java.so
681 %{moduledir}/java-modules
682 %{_datadir}/syslog-ng/include/scl/elasticsearch
683 %{_datadir}/syslog-ng/include/scl/hdfs
684 %{_datadir}/syslog-ng/include/scl/kafka
685 %endif
686
687 %if %{with json}
688 %files module-json-plugin
689 %defattr(644,root,root,755)
690 %attr(755,root,root) %{moduledir}/libjson-plugin.so
691 %{_datadir}/syslog-ng/include/scl/cee
692 %{_datadir}/syslog-ng/include/scl/cim
693 %{_datadir}/syslog-ng/include/scl/discord
694 %{_datadir}/syslog-ng/include/scl/ewmm
695 %{_datadir}/syslog-ng/include/scl/google
696 %{_datadir}/syslog-ng/include/scl/graylog2
697 %{_datadir}/syslog-ng/include/scl/loggly
698 %{_datadir}/syslog-ng/include/scl/logmatic
699 %{_datadir}/syslog-ng/include/scl/logscale
700 %{_datadir}/syslog-ng/include/scl/netskope
701 %{_datadir}/syslog-ng/include/scl/openobserve
702 %{_datadir}/syslog-ng/include/scl/opensearch
703 %{_datadir}/syslog-ng/include/scl/slack
704 %{_datadir}/syslog-ng/include/scl/splunk
705 %{_datadir}/syslog-ng/include/scl/sumologic
706 %endif
707
708 %if %{with python}
709 %files module-python
710 %defattr(644,root,root,755)
711 %attr(755,root,root) %{moduledir}/libmod-python.so
712 %{moduledir}/python
713 %endif
714
715 %if %{with redis}
716 %files module-redis
717 %defattr(644,root,root,755)
718 %attr(755,root,root) %{moduledir}/libredis.so
719 %endif
720
721 %if %{with riemann}
722 %files module-riemann
723 %defattr(644,root,root,755)
724 %attr(755,root,root) %{moduledir}/libriemann.so
725 %endif
726
727 %files libs
728 %defattr(644,root,root,755)
729 %attr(755,root,root) %{slibdir}/libevtlog-%{mver}.so.*.*.*
730 %attr(755,root,root) %{slibdir}/libevtlog-%{mver}.so.0
731 %attr(755,root,root) %{slibdir}/libloggen_helper-%{mver}.so.*.*.*
732 %attr(755,root,root) %{slibdir}/libloggen_helper-%{mver}.so.0
733 %attr(755,root,root) %{slibdir}/libloggen_plugin-%{mver}.so.*.*.*
734 %attr(755,root,root) %{slibdir}/libloggen_plugin-%{mver}.so.0
735 %attr(755,root,root) %{slibdir}/libsecret-storage.so.*.*.*
736 %attr(755,root,root) %{slibdir}/libsecret-storage.so.0
737 %attr(755,root,root) %{slibdir}/libsyslog-ng-%{mver}.so.*.*.*
738 %attr(755,root,root) %ghost %{slibdir}/libsyslog-ng-%{mver}.so.0
739 %dir %{_datadir}/syslog-ng
740
741 %files devel
742 %defattr(644,root,root,755)
743 %attr(755,root,root) %{_libdir}/libevtlog.so
744 %attr(755,root,root) %{_libdir}/libloggen_helper.so
745 %attr(755,root,root) %{_libdir}/libloggen_plugin.so
746 %attr(755,root,root) %{_libdir}/libsecret-storage.so
747 %attr(755,root,root) %{_libdir}/libsyslog-ng.so
748 %{_libdir}/libsyslog-ng-native-connector.a
749 %dir %{_includedir}/syslog-ng
750 %{_includedir}/syslog-ng/*.h
751 %{_includedir}/syslog-ng/ack-tracker
752 %{_includedir}/syslog-ng/compat
753 %{_includedir}/syslog-ng/control
754 %{_includedir}/syslog-ng/debugger
755 %{_includedir}/syslog-ng/filter
756 %{_includedir}/syslog-ng/healthcheck
757 %if %{without system_libivykis}
758 %{_includedir}/syslog-ng/ivykis
759 %endif
760 %{_includedir}/syslog-ng/logmsg
761 %{_includedir}/syslog-ng/logproto
762 %{_includedir}/syslog-ng/logthrdest
763 %{_includedir}/syslog-ng/logthrsource
764 %{_includedir}/syslog-ng/modules
765 %{_includedir}/syslog-ng/multi-line
766 %{_includedir}/syslog-ng/parser
767 %{_includedir}/syslog-ng/rewrite
768 %{_includedir}/syslog-ng/scanner
769 %{_includedir}/syslog-ng/signal-slot-connector
770 %{_includedir}/syslog-ng/stats
771 %{_includedir}/syslog-ng/str-repr
772 %{_includedir}/syslog-ng/template
773 %{_includedir}/syslog-ng/timeutils
774 %{_includedir}/syslog-ng/transport
775 %{_includedir}/syslog-ng/value-pairs
776 %{_datadir}/syslog-ng/tools
777 %{_pkgconfigdir}/syslog-ng.pc
778 %{_pkgconfigdir}/syslog-ng-native-connector.pc