2 # - cgi outputs just 'XML::API::XHTML=HASH(0x834c240)' instead of real html
5 %bcond_without tests # do not perform "make test"
7 %define cgi_version 0.04
8 %define main_version 0.09
12 Summary: Parselog - a log file analysis tool
13 Summary(pl.UTF-8): Parselog - narzędzie do analizy plików logów
15 Version: %{main_version}
18 Group: Applications/System
19 Source0: http://rekudos.net/repo/parselog/%{name}-%{main_version}.tar.gz
20 # Source0-md5: bac806ec9981c9d363e709b42d9b129e
21 Source1: http://rekudos.net/repo/parselog-cgi/%{name}-cgi-%{cgi_version}.tar.gz
22 # Source1-md5: 2942f30dd190dac31d7970ed04e0ffe5
23 Source2: %{name}-apache.conf
24 Patch0: %{name}-debug.patch
25 URL: http://rekudos.net/parselog/
26 BuildRequires: perl-DateTime
27 BuildRequires: perl-LockFile-Simple
28 BuildRequires: perl-devel >= 1:5.8.0
29 BuildRequires: rpm-perlprov >= 4.1-13
30 BuildRequires: rpmbuild(macros) >= 1.221
32 BuildRequires: perl-debug
36 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
38 %define _webapps /etc/webapps
39 %define _webapp %{name}
42 Parselog can produce statistics for the following applications
43 - AMaViS (and derivatives)
49 Reasons to use parselog instead of other log tools:
50 - Simplicity - Install one tool too cover multiple applications,
51 - Centralisation - display results from multiple machines together.
53 Reasons for not using parselog of other log tools:
54 - Speed - parselog is written in Perl. Your 'C'-based tool will be
56 - Completeness - maybe parselog doesn't measure the same way other
59 This package contains a set of Perl modules and a Perl script that
60 will parse various log files and create Round Robin Databases (RRDs).
62 %description -l pl.UTF-8
63 Parselog może tworzyć statystyki dla następujących aplikacji:
70 Powody, aby używać parseloga zamiast innych narzędzi do logów:
71 - prostota - jedno narzędzie dla wielu aplikacji,
72 - centralizacja - wyświetlanie razem wyników z wielu maszyn.
74 Powody, aby nie używać parseloga zamiast innych narzędzi:
75 - szybkość - parselog jest napisany w Perlu; narzędzie w C będzie
77 - kompletność - parselog może nie liczyć w ten sam sposób, co inne
80 Ten pakiet zawiera zestaw modułów Perla i skrypt perlowy
81 przetwarzający różne pliki logów i tworzący bazy danych RRD.
84 Summary: CGI script to generate graphs
85 Summary(pl.UTF-8): Skrypt CGI generujący wykresy
86 Version: %{cgi_version}
87 Group: Applications/WWW
88 Requires: %{name} = %{main_version}-%{release}
91 This package contains a Perl CGI script to generate on-the-fly graphs
92 to be viewed with a web browser.
94 %description cgi -l pl.UTF-8
95 Ten pakiet zawiera skrypt perlowy CGI generujący w locie wykresy
96 przeznaczone do oglądania przeglądarką WWW.
100 # for simplicity of build
101 mv parselog-cgi-%{cgi_version} cgi
105 sed -i -e 's,/etc/parselog,%{_webapps}/%{_webapp},g' Makefile.PL bin/*.cgi conf/*.conf
108 %{__perl} Makefile.PL \
111 OPTIMIZE="%{rpmcflags}"
112 %{?with_tests:%{__make} test}
115 %{__perl} Makefile.PL \
118 OPTIMIZE="%{rpmcflags}"
119 %{?with_tests:%{__make} test}
122 rm -rf $RPM_BUILD_ROOT
124 install -d $RPM_BUILD_ROOT{%{_sbindir},/var/cache/parselog-cgi}
125 %{__make} install dirs etc \
126 DESTDIR=$RPM_BUILD_ROOT
128 install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
129 mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/parselog
130 cp -a example $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
131 install conf/conf.d/* $RPM_BUILD_ROOT%{_sysconfdir}/parselog/conf.d
134 install -d $RPM_BUILD_ROOT%{_webapps}/%{_webapp}
135 %{__make} install cgi \
136 DESTDIR=$RPM_BUILD_ROOT
138 #mv $RPM_BUILD_ROOT{%{_sysconfdir}/parselog/{css,parselog-cgi.conf},%{_webapps}/%{_webapp}}
139 rm -f $RPM_BUILD_ROOT%{_bindir}/%{name}.cgi # duplicate
140 cp -p %{SOURCE2} $RPM_BUILD_ROOT%{_webapps}/%{_webapp}/httpd.conf
141 cp -p %{SOURCE2} $RPM_BUILD_ROOT%{_webapps}/%{_webapp}/apache.conf
143 rm -f $RPM_BUILD_ROOT%{perl_vendorarch}/auto/parselog/.packlist
146 rm -rf $RPM_BUILD_ROOT
148 %triggerin -- apache1 < 1.3.37-3, apache1-base
149 %webapp_register apache %{_webapp}
151 %triggerun -- apache1 < 1.3.37-3, apache1-base
152 %webapp_unregister apache %{_webapp}
154 %triggerin -- apache < 2.2.0, apache-base
155 %webapp_register httpd %{_webapp}
157 %triggerun -- apache < 2.2.0, apache-base
158 %webapp_unregister httpd %{_webapp}
160 %triggerpostun -- %{name}-cgi < 0.04-0.2
161 # rescue app configs.
162 for i in style.css parselog-cgi.conf; do
163 if [ -f /etc/%{name}/$i.rpmsave ]; then
164 mv -f %{_webapps}/%{_webapp}/$i{,.rpmnew}
165 mv -f /etc/%{name}/$i.rpmsave %{_webapps}/%{_webapp}/$i
169 # migrate from apache-config macros
170 if [ -f /etc/%{name}/apache.conf.rpmsave ]; then
171 if [ -d /etc/apache/webapps.d ]; then
172 cp -f %{_webapps}/%{_webapp}/apache.conf{,.rpmnew}
173 cp -f /etc/%{name}/apache.conf.rpmsave %{_webapps}/%{_webapp}/apache.conf
176 if [ -d /etc/httpd/webapps.d ]; then
177 cp -f %{_webapps}/%{_webapp}/httpd.conf{,.rpmnew}
178 cp -f /etc/%{name}/apache.conf.rpmsave %{_webapps}/%{_webapp}/httpd.conf
180 rm -f /etc/%{name}/apache.conf.rpmsave
183 # migrating from earlier apache-config?
184 if [ -L /etc/apache/conf.d/09_%{name}.conf ]; then
185 rm -f /etc/apache/conf.d/09_%{name}.conf
186 /usr/sbin/webapp register apache %{_webapp}
187 %service -q apache reload
189 if [ -L /etc/httpd/httpd.conf/09_%{name}.conf ]; then
190 rm -f /etc/httpd/httpd.conf/09_%{name}.conf
191 /usr/sbin/webapp register httpd %{_webapp}
192 %service -q httpd reload
196 %defattr(644,root,root,755)
198 %dir %{_sysconfdir}/parselog
199 %dir %{_sysconfdir}/parselog/conf.d
200 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/parselog/parselog.conf
201 %config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/parselog/conf.d/*
203 %attr(755,root,root) %{_sbindir}/parselog
205 %{_mandir}/man1/parselog.1p*
208 %{perl_vendorlib}/Log/Parse.pm
209 %{perl_vendorlib}/Log/Read.pm
211 %dir %{perl_vendorlib}/Log/Read
212 %{perl_vendorlib}/Log/Read/Apache.pm
213 %{perl_vendorlib}/Log/Read/Exim.pm
214 %{perl_vendorlib}/Log/Read/Syslog.pm
216 %dir /var/lib/parselog
218 %{_examplesdir}/%{name}-%{version}
221 %defattr(644,root,root,755)
222 %doc cgi/{Changes,README}
223 %dir %attr(750,root,http) %{_webapps}/%{_webapp}
224 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webapps}/%{_webapp}/apache.conf
225 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webapps}/%{_webapp}/httpd.conf
226 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_webapps}/%{_webapp}/parselog-cgi.conf
227 %dir %{_webapps}/%{_webapp}/css
228 %config(noreplace) %verify(not md5 mtime size) %{_webapps}/%{_webapp}/css/*
229 %attr(755,root,root) /usr/lib/cgi-bin/parselog.cgi
230 %{_mandir}/man1/parselog.cgi.1p*
231 /var/cache/parselog-cgi