Revision 8f3fca99
[#1224] Acquittement et purge automatique.
Ajoute une tâche cron permettant d'acquitter et de purger
automatiquement les alertes de VigiBoard en fonction de certains
critères.
Refs; #1224.
Change-Id: Ifefb70a5766d0702f1c27a33a642b8931c98655a
Reviewed-on: https://vigilo-dev.si.c-s.fr/review/1428
Tested-by: Build system <qa@vigilo-dev.si.c-s.fr>
Reviewed-by: Thomas BURGUIERE <thomas.burguiere@c-s.fr>
Makefile | ||
---|---|---|
4 | 4 |
deployment/logrotate.conf \ |
5 | 5 |
deployment/settings.ini \ |
6 | 6 |
deployment/vigiboard.conf \ |
7 |
deployment/vigiboard.wsgi |
|
7 |
deployment/vigiboard.wsgi \ |
|
8 |
pkg/vigilo-vigiboard.sh |
|
8 | 9 |
|
9 | 10 |
all: build |
10 | 11 |
build: $(SUBST_FILES) |
... | ... | |
20 | 21 |
-e 's,@NAGIOS_BIN@,$(NAGIOS_BIN),g' \ |
21 | 22 |
-e 's,@LOCALSTATEDIR@,$(LOCALSTATEDIR),g' $^ > $@ |
22 | 23 |
|
24 |
pkg/vigilo-vigiboard.sh: pkg/vigilo-vigiboard.sh.in |
|
25 |
sed -e 's,@INITCONFDIR@,$(INITCONFDIR),g' \ |
|
26 |
-e 's,@BINDIR@,$(BINDIR),g' $^ > $@ |
|
27 |
|
|
23 | 28 |
install: build install_python install_data |
24 | 29 |
install_pkg: build install_python_pkg install_data |
25 | 30 |
|
... | ... | |
30 | 35 |
$(SETUP_PY_OPTS) --root=$(DESTDIR) --record=INSTALLED_FILES |
31 | 36 |
|
32 | 37 |
install_data: $(SUBST_FILES) |
38 |
# Configuration de la tâche cron. |
|
39 |
install -p -m 644 -D pkg/initconf $(DESTDIR)$(INITCONFDIR)/$(PKGNAME) |
|
40 |
echo $(INITCONFDIR)/$(PKGNAME) >> INSTALLED_FILES |
|
33 | 41 |
# Permissions de la conf |
34 | 42 |
chmod a+rX -R $(DESTDIR)$(SYSCONFDIR)/vigilo/$(NAME) |
35 | 43 |
[ `id -u` -ne 0 ] || chgrp $(HTTPD_USER) $(DESTDIR)$(SYSCONFDIR)/vigilo/$(NAME)/*.ini |
pkg/initconf | ||
---|---|---|
1 |
# Les alertes de plus de ACK jours seront automatiquement acquittées. |
|
2 |
# Utiliser la valeur -1 pour désactiver l'acquittement automatique. |
|
3 |
ACK=-1 |
|
4 |
|
|
5 |
# Options pour contrôler l'acquittement automatique. |
|
6 |
# Consulter `vigiboard-close --help` pour plus d'information. |
|
7 |
ACK_OPTIONS="-uk" |
|
8 |
|
|
9 |
# Les alertes de plus de PURGE jours seront automatiquement purgées. |
|
10 |
# Utiliser la valeur -1 pour désactiver la purge automatique. |
|
11 |
# ATTENTION: la purge des alertes entraîne leur effacement définitif |
|
12 |
# de la base de données Vigilo. |
|
13 |
PURGE=-1 |
|
14 |
|
|
15 |
# Options pour contrôler la purge automatique. |
|
16 |
# Consulter `vigiboard-purge --help` pour plus d'information. |
|
17 |
PURGE_OPTIONS="" |
pkg/vigiboard.mandriva.spec | ||
---|---|---|
117 | 117 |
%config(noreplace) %{_sysconfdir}/vigilo/%{module}/*.py |
118 | 118 |
%config(noreplace) %{_sysconfdir}/vigilo/%{module}/*.wsgi |
119 | 119 |
%config(noreplace) %attr(640,root,apache) %{_sysconfdir}/vigilo/%{module}/*.ini |
120 |
%config(noreplace) /etc/httpd/conf/webapps.d/%{name}.conf
|
|
120 |
%config(noreplace) %{_sysconfdir}/httpd/conf/webapps.d/%{name}.conf
|
|
121 | 121 |
%dir %{_localstatedir}/log/vigilo/ |
122 | 122 |
%attr(750,apache,apache) %{_localstatedir}/log/vigilo/%{module} |
123 |
%config(noreplace) /etc/logrotate.d/%{name}
|
|
123 |
%config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
|
|
124 | 124 |
%attr(750,apache,apache) %{_localstatedir}/cache/vigilo/sessions |
125 | 125 |
%{python_sitelib}/* |
126 |
%attr(755,root,root) %{_sysconfdir}/cron.daily/* |
|
127 |
%config(noreplace) %{_sysconfdir}/sysconfig/%{name} |
|
128 |
|
pkg/vigiboard.redhat.spec | ||
---|---|---|
66 | 66 |
%config(noreplace) %{_sysconfdir}/vigilo/%{module}/*.py |
67 | 67 |
%config(noreplace) %{_sysconfdir}/vigilo/%{module}/*.wsgi |
68 | 68 |
%config(noreplace) %attr(640,root,apache) %{_sysconfdir}/vigilo/%{module}/*.ini |
69 |
%config(noreplace) /etc/httpd/conf.d/%{name}.conf
|
|
69 |
%config(noreplace) %{_sysconfdir}/httpd/conf.d/%{name}.conf
|
|
70 | 70 |
%dir %{_localstatedir}/log/vigilo/ |
71 | 71 |
%attr(750,apache,apache) %{_localstatedir}/log/vigilo/%{module} |
72 |
%config(noreplace) /etc/logrotate.d/%{name}
|
|
72 |
%config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
|
|
73 | 73 |
%attr(750,apache,apache) %{_localstatedir}/cache/vigilo/sessions |
74 | 74 |
%{python_sitelib}/* |
75 |
%attr(755,root,root) %{_sysconfdir}/cron.daily/* |
|
76 |
%config(noreplace) %{_sysconfdir}/sysconfig/%{name} |
pkg/vigiboard.rhel6.spec | ||
---|---|---|
59 | 59 |
%config(noreplace) %{_sysconfdir}/vigilo/%{module}/*.py |
60 | 60 |
%config(noreplace) %{_sysconfdir}/vigilo/%{module}/*.wsgi |
61 | 61 |
%config(noreplace) %attr(640,root,apache) %{_sysconfdir}/vigilo/%{module}/*.ini |
62 |
%config(noreplace) /etc/httpd/conf.d/%{name}.conf
|
|
62 |
%config(noreplace) %{_sysconfdir}/httpd/conf.d/%{name}.conf
|
|
63 | 63 |
%dir %{_localstatedir}/log/vigilo/ |
64 | 64 |
%attr(750,apache,apache) %{_localstatedir}/log/vigilo/%{module} |
65 |
%config(noreplace) /etc/logrotate.d/%{name}
|
|
65 |
%config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
|
|
66 | 66 |
%attr(750,apache,apache) %{_localstatedir}/cache/vigilo/sessions |
67 | 67 |
%{python_sitelib}/* |
68 |
%attr(755,root,root) %{_sysconfdir}/cron.daily/* |
|
69 |
%config(noreplace) %{_sysconfdir}/sysconfig/%{name} |
pkg/vigilo-vigiboard.sh.in | ||
---|---|---|
1 |
#!/bin/sh |
|
2 |
|
|
3 |
ACK=-1 |
|
4 |
ACK_OPTIONS="-uk" |
|
5 |
PURGE=-1 |
|
6 |
PURGE_OPTIONS="" |
|
7 |
|
|
8 |
if [ -f '@INITCONFDIR@/vigilo-vigiboard' ]; then |
|
9 |
. '@INITCONFDIR@/vigilo-vigiboard' |
|
10 |
fi |
|
11 |
|
|
12 |
if [ "$ACK" -gt -1 ]; then |
|
13 |
@BINDIR@/vigiboard-close $ACK_OPTIONS -d $ACK |
|
14 |
fi |
|
15 |
|
|
16 |
if [ "$PURGE" -gt -1 ]; then |
|
17 |
@BINDIR@/vigiboard-purge $PURGE_OPTIONS -d $PURGE |
|
18 |
fi |
setup.py | ||
---|---|---|
101 | 101 |
'deployment/settings.ini', |
102 | 102 |
'deployment/who.ini', |
103 | 103 |
]), |
104 |
( |
|
105 |
os.path.join(sysconfdir, 'cron.daily'), |
|
106 |
[os.path.join('pkg', 'vigilo-vigiboard.sh')] |
|
107 |
), |
|
104 | 108 |
], |
105 | 109 |
) |
Also available in: Unified diff