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