Tâche #35313
Scénario #35390: Seth 2.8.1 : pas de données de surveillance - zephiragents en erreur
Incohérence entre l'agent Zéphir et diagnose sur les erreurs de base de données Scribe
100%
Description
Dans l'agent Zéphir on m'annonce 10 erreurs dans l'action "vérification de la base Samba"
Par contre dans diagnose j'ai :
Base de données samba : . Nombre d'erreurs =>
Le problème semble être le contenu du fichier de log :
root@scribe2:~# cat /var/lib/eole/reports/samba-dbcheck.log 10 errors
Si je supprime la ligne vide le diagnose est bien en rouge.
Par contre il y a 2 fois la valeur 10 :
Base de données samba : . Nombre d'erreurs => 10 10
Demandes liées
Révisions associées
Chercher spécifiquement le motif ([0-9]+ errors) dans le rapport.
Ref #35313
Ne pas afficher de complément d’information.
Le fichier de rapport ne semble pas devoir contenir
d’informations autres que le nombre d’erreurs.
Ref #35313
Conserver l’intégralité du rapport de la commande samba-tool dbcheck.
Ref #35313
Historique
#1 Mis à jour par Joël Cuissinat il y a environ un an
J'ai déjà lu ça quelque part... https://pcll.ac-dijon.fr/listes/arc/scribe/2023-03/msg00005.html
#2 Mis à jour par Joël Cuissinat il y a environ un an
root@scribe:~# dpkg -S /usr/share/eole/sbin/run_samba_tool_dbcheck eole-ad-dc-scribe: /usr/share/eole/sbin/run_samba_tool_dbcheck
root@scribe:/usr/share/eole/diagnose# cat 151-AD-scribe #!/bin/bash [ -x /var/lib/lxc/addc/rootfs/usr/share/eole/diagnose/151-AD ] && /var/lib/lxc/addc/rootfs/usr/share/eole/diagnose/151-AD exit 0
Fonctionnalité ajoutée sur EOLE ≥ 2.8.1
#3 Mis à jour par Joël Cuissinat il y a environ un an
- Tracker changé de Demande à Scénario
- Début
22/03/2023supprimé - Release mis à EOLE 2.8.1
- Points de scénarios mis à 1.0
#4 Mis à jour par Joël Cuissinat il y a environ un an
- Lié à Scénario #31927: Mettre en place un check de la bd Samba ajouté
#5 Mis à jour par Joël Cuissinat il y a 11 mois
- Lié à Scénario #35390: Seth 2.8.1 : pas de données de surveillance - zephiragents en erreur ajouté
#6 Mis à jour par Joël Cuissinat il y a 11 mois
- Tâche parente mis à #35390
#7 Mis à jour par Joël Cuissinat il y a 11 mois
à défaut de trouver la source du problème, il faudrait que le test diagnose supporte le "mauvais" format...
#8 Mis à jour par Benjamin Bohard il y a 6 mois
La lecture du contenu du rapport de samba-tool dbcheck est assurée par
read -a db_status <<< $(cat /var/lib/eole/reports/samba-dbcheck.log) db_errors=${db_status[0]}
qui s’accommode mal de la présence d’une ligne vide.
Le doublon est présent à cause de
EchoRouge "${db_errors}" EchoRouge "${db_status[@]}"
dans le cas ou db_errors est différent de 0.
db_status est un tableau qui ne contient que la partie du retour de samba-tool dbcheck qui est entre parenthèses, par exemple "0 errors". Il faudrait un exemple avec au moins une erreur dans la base pour sur la pertinence d’afficher ce contenu.
#9 Mis à jour par Daniel Dehennin il y a 6 mois
Pour tester, il faudrait peut-être regarder comment samba fait ces tests dbcheck ?
#10 Mis à jour par Benjamin Bohard il y a 6 mois
Sur un Seth avec import :
dbcheck.ldif
dn: CN=c42e15,CN=Users,DC=domseth,DC=ac-test,DC=fr changetype: modify add: otherHomePhone otherHomePhone: 1 otherHomePhone: 2 otherHomePhone: 1 otherHomePhone: 3 otherHomePhone: 2
ldbmodify -H /var/lib/samba/private/sam.ldb.d/DC%3DDOMSETH%2CDC%3DAC-TEST%2CDC%3DFR.ldb dbcheck.ldif
# samba-tool dbcheck Checking 321 objects ERROR: Duplicate values for attribute 'otherHomePhone' in 'CN=c42e15,CN=Users,DC=domseth,DC=ac-test,DC=fr' Values contain a duplicate: [1,2,1,3,2]/[2,1,3]! Not fixing attribute 'otherHomePhone' On object CN=c42e15,CN=Users,DC=domseth,DC=ac-test,DC=fr ERROR: Attribute otherhomephone not present in replication metadata Not fixing missing replPropertyMetaData element 'otherhomephone' Please use --fix to fix these errors Checked 321 objects (2 errors)
Une première lecture du code confirme également que la seule information entre parenthèses devrait être le nombre d’erreurs.
Il ne semble pas nécessaire de répéter cette information. Peut-être afficher un conseil sur l’exécution de samba-tool dbcheck pour avoir plus de détails ?
Au passage, on peut voir que la commande awk utilisée pour extraire les informations pour le rapport doit intercepter la phrase "Please use --fix to fix these errors". On peut filtrer sur "errors)" plutôt que sur "errors" ou encore se fier au fait que le nombre d’erreurs est toujours sur la dernière ligne.
#11 Mis à jour par Benjamin Bohard il y a 6 mois
- Statut changé de Nouveau à En cours
- Assigné à mis à Benjamin Bohard
- Début mis à 08/11/2023
#12 Mis à jour par Benjamin Bohard il y a 6 mois
Actuellement, le script run_samba_tool_dbcheck filtre les résultats écrits dans le fichier de rapport.
Ce rapport, de ce fait, ne contient pas de détails sur les erreurs identifiées par "samba-tool dbcheck".
L’idée proposée précédemment de conseiller à l’administrateur de relancer "samba-tool dbcheck" pour avoir des détails sur les erreurs ne semble pas judicieuse si cette commande peut mettre du temps.
Il semble finalement plus pertinent d’inclure dans le rapport /var/lib/eole/reports/samba-dbcheck.log la totalité du retour de la commande "samba-tool dbcheck" et de déléguer le filtrage aux scripts qui le lisent (diagnose et agent zéphir).
Pour éviter les effets de bords d’un changement conséquent du contenu du fichier de rapport, le résultat de la commande peut être envoyé dans un autre fichier (/var/lib/eole/reports/samba-dbcheck.full_report par exemple) et le contenu de ce dernier filtré pour construire le fichier /var/lib/eole/reports/samba-dbcheck.log. Les scripts peuvent continuer à le lire et renvoyer l’administrateur à la lecture de l’autre fichier pour plus de détails).
#13 Mis à jour par Benjamin Bohard il y a 5 mois
- Statut changé de En cours à À valider
#14 Mis à jour par Philippe Carre il y a 4 mois
- Statut changé de À valider à Résolu
A vérifier coté Eole, on n'utilise pas de scribe .
#15 Mis à jour par Joël Cuissinat il y a 3 mois
eole-ad-dc$ git branch -r --contains 6d91ac7c origin/2.8.1/master origin/HEAD -> origin/master origin/dist/eole/2.8.1/master origin/dist/eole/2.9.0/master origin/master
#16 Mis à jour par Joël Cuissinat il y a 3 mois
- % réalisé changé de 0 à 100
#17 Mis à jour par Joël Cuissinat il y a 3 mois
- Statut changé de Résolu à Fermé
- Restant à faire (heures) mis à 0.0
Rédaction d'un test squash pour Scribe et AmonEcole : https://dev-eole.ac-dijon.fr/squash/test-cases/9526/info
Passant sur ces deux modules.