Projet

Général

Profil

Evolution #2524

remonter le rapport du job de sauvegarde bacula

Ajouté par Benjamin Bohard il y a plus de 12 ans. Mis à jour il y a plus de 12 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Catégorie:
-
Début:
05/12/2011
Echéance:
% réalisé:

100%

Distribution:
EOLE 2.3

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.


Demandes liées

Lié à zephir-client - Evolution #2521: remonter le rapport du job de sauvegarde bacula Fermé 05/12/2011
Lié à eole-bacula - Evolution #2523: remonter le rapport du job de sauvegarde bacula Fermé 05/12/2011

Révisions associées

Révision 49ac9259 (diff)
Ajouté par moyooo il y a plus de 13 ans

Problem LDAP sync for unconfigured fields see #2524

Révision 99c92238 (diff)
Ajouté par moyooo il y a plus de 13 ans

Problem LDAP sync for unconfigured fields see #2524

Révision b163d3b6 (diff)
Ajouté par Benjamin Bohard il y a plus de 12 ans

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.

Historique

#1 Mis à jour par Benjamin Bohard il y a plus de 12 ans

Il y a deux solutions simples :

  1. étendre le dictionnaire pour y stocker un nombre plus important de résultats,
  2. 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 Mis à jour par Benjamin Bohard il y a plus de 12 ans

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 Mis à jour par Benjamin Bohard il y a plus de 12 ans

  • Statut changé de Nouveau à Résolu
  • % réalisé changé de 0 à 100

#4 Mis à jour par Joël Cuissinat il y a plus de 12 ans

  • Assigné à mis à Benjamin Bohard
  • Version cible mis à Mises à jour 2.3 - 03 RC

#5 Mis à jour par Joël Cuissinat il y a plus de 12 ans

  • Statut changé de Résolu à Fermé

Formats disponibles : Atom PDF