Evolution #2524
remonter le rapport du job de sauvegarde bacula
100%
Description
La fonction bacula_rapport_load() charge le fichier pointé par la valeur de BACULA_RAPPORT. Cette valeur doit correspondre au fichier qui contient le rapport de la sauvegarde des ensembles de fichier plutôt qu'à celui qui contient le rapport de sauvegarde du catalogue, par exemple.
Le fichier pointé est un dictionnaire recréé à l'aide de pickle deux fois à chaque job (lancé via baculaconfig.py avant et après le job de sauvegarde à proprement parlé).
Le fichier concerné est pyeole/bacula.py.
Related issues
Associated revisions
Problem LDAP sync for unconfigured fields see #2524
Problem LDAP sync for unconfigured fields see #2524
modification pour distinguer et conserver les statuts des différentes sauvegardes (fixes #2524)
modification des fonctions écrivant et lisant le dictionnaire /var/lib/eole/reports/resultat-bacula pour avoir trois entrees principales : cron, sauvegarde et catalogue, utilisables par l'agent zephir.
History
#1 Updated by Benjamin Bohard almost 12 years ago
Il y a deux solutions simples :
- étendre le dictionnaire pour y stocker un nombre plus important de résultats,
- utiliser directement la base de données de bacula pour chercher le statut d'un sauvegarde.
La première solution implique de lire un dictionnaire à deux entrées depuis le fichier avant de le mettre à jour et d'écraser le fichier avec la nouvelle version du dictionnaire.
La deuxième solution implique de charger un module pour accéder à la base de données.
La première version est sans doute moins lourde et répond aux attentes : disposer du statut des jobs de sauvegarde des ensembles de fichiers et de sauvegarde du catalogue, l'un n'écrasant pas l'autre.
dans pyeole/bacula.py, modifier les fonctions _bacula_rapport, bacula_rapport_in_progress, bacula_rapport_ok et bacula_rapport_err pour modifier le dictionnaire créé.
Au lieu d'un dictionnaire de type :
{'text': text, 'date': date, 'status':status}
on passe à :
{'sauvegarde': {'text': text, 'date': date, 'status':status},
'catalogue': {'text': text, 'date': date, 'status':status}}
qui contiendra les statuts des dernières sauvegardes de chaque type.
#2 Updated by Benjamin Bohard almost 12 years ago
Les modifications, en plus des fonctions citées précédemment, touchent la fonction bacula_rapport_load qui prend désormais un paramètre nommé dont la valeur par défaut assure une non régression de la fonction (clé pour extraire du dictionnaire modifié /var/lib/eole/reports/resultat-bacula les données concernant la sauvegarde).
#3 Updated by Benjamin Bohard almost 12 years ago
- Status changed from Nouveau to Résolu
- % Done changed from 0 to 100
Appliqué par commit b163d3b62d5051f94bfda8273bfdf555571d3e72.
#4 Updated by Joël Cuissinat almost 12 years ago
- Assigned To set to Benjamin Bohard
- Target version set to Mises à jour 2.3 - 03 RC
#5 Updated by Joël Cuissinat almost 12 years ago
- Status changed from Résolu to Fermé