Tâche #19328
Scénario #19368: Rédiger/Améliorer cas de tests sur SQUASH pour la version 2.6.1
Correction SC-T04-016 - Maj-Auto sans rsyslog (2.6.1b3)
Description
Lien vers l'execution Squash : [[http://squash-tm.eole.lan/squash/executions/4589]]
Etape 2/3¶
"rsyslog stop/waiting" ne s'affiche pas.
Vu beaucoup de fois dans cette campagne. Le test demande d'arreter ou démarrer un service et de constater la bonne exécution de la commande. Sauf que depuis "systemd", la console est silencieuse et ne donne aucune indication. Il faudrait rajouter un pas pour valider le bon arrêt/démarrage du service
Etape 3/3¶
Problème de prérequis ?
Disposer d'une machine aca.eolebase instance-default ou la machine du test SC-T04-015
De toute évidence, la machine testée doit avoir préalablement été enregistrée sur zéphir. Le cas échéant, il serait bien d'avoir le test
SC-T04-016 qui vient juste après le SC-T04-015 ? Actuelemment, il y a le SC-T04-001 entre les deux qui m'a obligé à trasher mon infra zéphir pour spawner un eolebase, juste dans le but de valider l'affichage d'un message d'aide (-_-')
... Au secours le temps perdu !
Bref, au cas ou, voilà ce que j'obtiens lors du "Maj-Auto" demandé dans ce pas :
root@eolebase:~# Maj-Auto Mise à jour le mercredi 22 février 2017 16:33:58 *** eolebase 2.6.1 (0000000A) *** Configuration du dépôt Ubuntu avec la source test-eole.ac-dijon.fr Configuration du dépôt EOLE avec la source test-eole.ac-dijon.fr Action update pour root Action list-upgrade pour root 4 nouveaux, 4 mis à jour, 0 à enlever Nouveaux paquets : linux-headers-4.4.0-64 (4.4.0-64.85) (root) linux-headers-4.4.0-64-generic (4.4.0-64.85) (root) linux-image-4.4.0-64-generic (4.4.0-64.85) (root) linux-image-extra-4.4.0-64-generic (4.4.0-64.85) (root) Paquets à mettre à jour : linux-generic (4.4.0.64.68) (root) linux-headers-generic (4.4.0.64.68) (root) linux-image-generic (4.4.0.64.68) (root) tcpdump (4.9.0-1ubuntu1~ubuntu16.04.1) (root) Action download-upgrade pour root Lecture des listes de paquets… Construction de l'arbre des dépendances… Lecture des informations d'état… Calcul de la mise à jour… Les NOUVEAUX paquets suivants seront installés : linux-headers-4.4.0-64 linux-headers-4.4.0-64-generic linux-image-4.4.0-64-generic linux-image-extra-4.4.0-64-generic Les paquets suivants seront mis à jour : linux-generic linux-headers-generic linux-image-generic tcpdump 4 mis à jour, 4 nouvellement installés, 0 à enlever et 0 non mis à jour. Il est nécessaire de prendre 68,8 Mo dans les archives. Après cette opération, 297 Mo d'espace disque supplémentaires seront utilisés. Réception de:1 http://test-eole.ac-dijon.fr/ubuntu xenial-security/main amd64 tcpdump amd64 4.9.0-1ubuntu1~ubuntu16.04.1 [382 kB] Réception de:2 http://test-eole.ac-dijon.fr/ubuntu xenial-security/main amd64 linux-image-4.4.0-64-generic amd64 4.4.0-64.85 [21,8 MB] Réception de:3 http://test-eole.ac-dijon.fr/ubuntu xenial-security/main amd64 linux-image-extra-4.4.0-64-generic amd64 4.4.0-64.85 [36,0 MB] Réception de:4 http://test-eole.ac-dijon.fr/ubuntu xenial-security/main amd64 linux-generic amd64 4.4.0.64.68 [1 784 B] Réception de:5 http://test-eole.ac-dijon.fr/ubuntu xenial-security/main amd64 linux-image-generic amd64 4.4.0.64.68 [2 456 B] Réception de:6 http://test-eole.ac-dijon.fr/ubuntu xenial-security/main amd64 linux-headers-4.4.0-64 all 4.4.0-64.85 [9 899 kB] Réception de:7 http://test-eole.ac-dijon.fr/ubuntu xenial-security/main amd64 linux-headers-4.4.0-64-generic amd64 4.4.0-64.85 [780 kB] Réception de:8 http://test-eole.ac-dijon.fr/ubuntu xenial-security/main amd64 linux-headers-generic amd64 4.4.0.64.68 [2 434 B] 68,8 Mo réceptionnés en 1s (47,1 Mo/s) Téléchargement achevé et dans le mode téléchargement uniquement Action dist-upgrade pour root Lecture des listes de paquets… Construction de l'arbre des dépendances… Lecture des informations d'état… Calcul de la mise à jour… Les NOUVEAUX paquets suivants seront installés : linux-headers-4.4.0-64 linux-headers-4.4.0-64-generic linux-image-4.4.0-64-generic linux-image-extra-4.4.0-64-generic Les paquets suivants seront mis à jour : linux-generic linux-headers-generic linux-image-generic tcpdump 4 mis à jour, 4 nouvellement installés, 0 à enlever et 0 non mis à jour. Il est nécessaire de prendre 0 o/68,8 Mo dans les archives. Après cette opération, 297 Mo d'espace disque supplémentaires seront utilisés. (Lecture de la base de données... 109609 fichiers et répertoires déjà installés.) Préparation du dépaquetage de .../tcpdump_4.9.0-1ubuntu1~ubuntu16.04.1_amd64.deb ... Dépaquetage de tcpdump (4.9.0-1ubuntu1~ubuntu16.04.1) sur (4.7.4-1ubuntu1) ... Sélection du paquet linux-image-4.4.0-64-generic précédemment désélectionné. Préparation du dépaquetage de .../linux-image-4.4.0-64-generic_4.4.0-64.85_amd64.deb ... Done. Dépaquetage de linux-image-4.4.0-64-generic (4.4.0-64.85) ... Sélection du paquet linux-image-extra-4.4.0-64-generic précédemment désélectionné. Préparation du dépaquetage de .../linux-image-extra-4.4.0-64-generic_4.4.0-64.85_amd64.deb ... Dépaquetage de linux-image-extra-4.4.0-64-generic (4.4.0-64.85) ... Préparation du dépaquetage de .../linux-generic_4.4.0.64.68_amd64.deb ... Dépaquetage de linux-generic (4.4.0.64.68) sur (4.4.0.63.67) ... Préparation du dépaquetage de .../linux-image-generic_4.4.0.64.68_amd64.deb ... Dépaquetage de linux-image-generic (4.4.0.64.68) sur (4.4.0.63.67) ... Sélection du paquet linux-headers-4.4.0-64 précédemment désélectionné. Préparation du dépaquetage de .../linux-headers-4.4.0-64_4.4.0-64.85_all.deb ... Dépaquetage de linux-headers-4.4.0-64 (4.4.0-64.85) ... Sélection du paquet linux-headers-4.4.0-64-generic précédemment désélectionné. Préparation du dépaquetage de .../linux-headers-4.4.0-64-generic_4.4.0-64.85_amd64.deb ... Dépaquetage de linux-headers-4.4.0-64-generic (4.4.0-64.85) ... Préparation du dépaquetage de .../linux-headers-generic_4.4.0.64.68_amd64.deb ... Dépaquetage de linux-headers-generic (4.4.0.64.68) sur (4.4.0.63.67) ... Traitement des actions différées (« triggers ») pour man-db (2.7.5-1) ... Paramétrage de tcpdump (4.9.0-1ubuntu1~ubuntu16.04.1) ... Installation de la nouvelle version du fichier de configuration /etc/apparmor.d/usr.sbin.tcpdump ... Paramétrage de linux-image-4.4.0-64-generic (4.4.0-64.85) ... Running depmod. update-initramfs: deferring update (hook will be called later) Examining /etc/kernel/postinst.d. run-parts: executing /etc/kernel/postinst.d/apt-auto-removal 4.4.0-64-generic /boot/vmlinuz-4.4.0-64-generic run-parts: executing /etc/kernel/postinst.d/initramfs-tools 4.4.0-64-generic /boot/vmlinuz-4.4.0-64-generic update-initramfs: Generating /boot/initrd.img-4.4.0-64-generic run-parts: executing /etc/kernel/postinst.d/zz-update-grub 4.4.0-64-generic /boot/vmlinuz-4.4.0-64-generic Création du fichier de configuration GRUB… Image Linux trouvée : /boot/vmlinuz-4.4.0-64-generic Image mémoire initiale trouvée : /boot/initrd.img-4.4.0-64-generic Image Linux trouvée : /boot/vmlinuz-4.4.0-63-generic Image mémoire initiale trouvée : /boot/initrd.img-4.4.0-63-generic Image Linux trouvée : /boot/vmlinuz-4.4.0-62-generic Image mémoire initiale trouvée : /boot/initrd.img-4.4.0-62-generic Found memtest86+ image: /memtest86+.elf Found memtest86+ image: /memtest86+.bin fait Paramétrage de linux-image-extra-4.4.0-64-generic (4.4.0-64.85) ... run-parts: executing /etc/kernel/postinst.d/apt-auto-removal 4.4.0-64-generic /boot/vmlinuz-4.4.0-64-generic run-parts: executing /etc/kernel/postinst.d/initramfs-tools 4.4.0-64-generic /boot/vmlinuz-4.4.0-64-generic update-initramfs: Generating /boot/initrd.img-4.4.0-64-generic run-parts: executing /etc/kernel/postinst.d/zz-update-grub 4.4.0-64-generic /boot/vmlinuz-4.4.0-64-generic Création du fichier de configuration GRUB… Image Linux trouvée : /boot/vmlinuz-4.4.0-64-generic Image mémoire initiale trouvée : /boot/initrd.img-4.4.0-64-generic Image Linux trouvée : /boot/vmlinuz-4.4.0-63-generic Image mémoire initiale trouvée : /boot/initrd.img-4.4.0-63-generic Image Linux trouvée : /boot/vmlinuz-4.4.0-62-generic Image mémoire initiale trouvée : /boot/initrd.img-4.4.0-62-generic Found memtest86+ image: /memtest86+.elf Found memtest86+ image: /memtest86+.bin fait Paramétrage de linux-image-generic (4.4.0.64.68) ... Paramétrage de linux-headers-4.4.0-64 (4.4.0-64.85) ... Paramétrage de linux-headers-4.4.0-64-generic (4.4.0-64.85) ... Paramétrage de linux-headers-generic (4.4.0.64.68) ... Paramétrage de linux-generic (4.4.0.64.68) ... Mise à jour OK Maj-Auto - Un ou plusieurs paquets ont été mis à jour, utilisez la commande [reconfigure] pour que les modifications soient prises en compte.
Associated revisions
Use systemd-journald socket for syslog logging
This permit to have message in both “journactl” and “rsyslog”.
Ref: #19502
History
#1 Updated by Ghislain Loaec over 6 years ago
- Subject changed from Correction to Correction SC-T04-016 - Maj-Auto sans rsyslog (2.6.1b3)
#2 Updated by Scrum Master over 6 years ago
Revoir le test : vérifier que le service est bien arrêté et qu'il est toujours bloquant.
#3 Updated by Bruno Boiget over 6 years ago
- Status changed from Nouveau to En cours
- Assigned To set to Bruno Boiget
L'enregistrement à Zéphir n'est pas nécessaire pour ce test.
Par contre, le logger ne semble pas passer en mode console si systemd-journald est arrêté (ni rsyslog)
Dans l'initialisation du logger:
try: z_logger = init_logging(name=u'zephir', syslog=True, level=u'info', console=display) except ValueError, err: z_logger = init_logging(name=u'zephir', level=u'info', console=True) z_logger.warn(_(u"Syslog logging is not working properly: {0}".format(err))) z_logger.warn(_(u"You may need to start/restart systemd-journald"))
Le comportement en version 2.6 de la librairie logging semble différente de la version 2.5:
- l'arrêt de rsyslog et / ou systemd-journald ne provoque pas d'exception à l'initialisation du handler
- le handler syslog ne semble pas convenir pour journald (il existe un handler spécifique : systemd.journal.JournalHandler
- avec ce nouveau handler, si le service est arrêté on a un traceback à l'envoi de message (pas à l'initialisation)
#4 Updated by Bruno Boiget over 6 years ago
Concernant le problème du traceback en cas d'arrêt du service systemd-journald :
Le traceback apparaît de la façon suivante, mais l'exception n'est pas levée
Traceback (most recent call last): File "/usr/lib/python2.7/dist-packages/systemd/journal.py", line 528, in emit **self._extra) File "/usr/lib/python2.7/dist-packages/systemd/journal.py", line 411, in send return sendv(*args) IOError: [Errno 111] Connection refused Logged from file <stdin>, line 1
Maj-Auto se poursuit donc sans problème, mais le fonctionnement précédent n'est plus possible (instanciation du logger en mode 'non syslog' avec sortie sur la console si l'initialisation de base lève une exception).
Le problème n'est pas bloquant, mais pas terrible au niveau cosmétique...
#5 Updated by Joël Cuissinat over 6 years ago
- Status changed from En cours to Nouveau
- Assigned To deleted (
Bruno Boiget) - Estimated time set to 2.00 h
- Parent task changed from #19020 to #19368
- Remaining (hours) set to 2.0
#6 Updated by Joël Cuissinat over 6 years ago
- Status changed from Nouveau to En cours
#7 Updated by Joël Cuissinat over 6 years ago
- Assigned To set to Joël Cuissinat
#8 Updated by Joël Cuissinat over 6 years ago
La correction #19502 ne change toujours pas ce comportement mais me semble être une piste de réflexion sérieuse :o
#9 Updated by Joël Cuissinat over 6 years ago
- Status changed from En cours to Nouveau
- Assigned To deleted (
Joël Cuissinat)
#10 Updated by Scrum Master over 6 years ago
- Assigned To set to Daniel Dehennin
#11 Updated by Daniel Dehennin over 6 years ago
- Status changed from Nouveau to En cours
#12 Updated by Daniel Dehennin over 6 years ago
Ce n’est pas systemd-journald
qui écoute sur /run/systemd/journal/syslog
mais bien rsyslog :
systemd-journald
etrsyslog
démarréroot@eolebase:~# lsof | grep '/run/systemd/journal/syslog' systemd 1 root 22u unix 0xffff880078fc3000 0t0 30762 /run/systemd/journal/syslog type=DGRAM rsyslogd 3035 syslog 3u unix 0xffff880078fc3000 0t0 30762 /run/systemd/journal/syslog type=DGRAM in:imuxso 3035 3036 syslog 3u unix 0xffff880078fc3000 0t0 30762 /run/systemd/journal/syslog type=DGRAM in:immark 3035 3037 syslog 3u unix 0xffff880078fc3000 0t0 30762 /run/systemd/journal/syslog type=DGRAM in:imklog 3035 3038 syslog 3u unix 0xffff880078fc3000 0t0 30762 /run/systemd/journal/syslog type=DGRAM rs:main 3035 3040 syslog 3u unix 0xffff880078fc3000 0t0 30762 /run/systemd/journal/syslog type=DGRAM
rsyslog
arrêtésystemd-journald
démarréroot@eolebase:~# service rsyslog status ● rsyslog.service - System Logging Service Loaded: loaded (/lib/systemd/system/rsyslog.service; enabled; vendor preset: enabled) Active: inactive (dead) since jeu. 2017-03-09 10:46:45 CET; 931ms ago Docs: man:rsyslogd(8) http://www.rsyslog.com/doc/ Process: 3035 ExecStart=/usr/sbin/rsyslogd -n (code=exited, status=0/SUCCESS) Main PID: 3035 (code=exited, status=0/SUCCESS) mars 09 10:46:36 eolebase systemd[1]: Started System Logging Service. mars 09 10:46:45 eolebase systemd[1]: Stopping System Logging Service... mars 09 10:46:45 eolebase systemd[1]: Stopped System Logging Service. mars 09 10:46:45 eolebase systemd[1]: Stopped System Logging Service. root@eolebase:~# lsof | grep '/run/systemd/journal/syslog' root@eolebase:~#
rsyslogd
démarré etsystemd-journald
arrêtéroot@eolebase:~# lsof | grep '/run/systemd/journal/syslog' systemd 1 root 22u unix 0xffff880079340000 0t0 32354 /run/systemd/journal/syslog type=DGRAM rsyslogd 3432 syslog 3u unix 0xffff880079340000 0t0 32354 /run/systemd/journal/syslog type=DGRAM in:imuxso 3432 3434 syslog 3u unix 0xffff880079340000 0t0 32354 /run/systemd/journal/syslog type=DGRAM in:immark 3432 3435 syslog 3u unix 0xffff880079340000 0t0 32354 /run/systemd/journal/syslog type=DGRAM in:imklog 3432 3436 syslog 3u unix 0xffff880079340000 0t0 32354 /run/systemd/journal/syslog type=DGRAM rs:main 3432 3437 syslog 3u unix 0xffff880079340000 0t0 32354 /run/systemd/journal/syslog type=DGRAM
#13 Updated by Daniel Dehennin over 6 years ago
Daniel Dehennin a écrit :
Ce n’est pas
systemd-journald
qui écoute sur/run/systemd/journal/syslog
mais bien rsyslog :
systemd-journald
écoute sur /dev/log
qui est un lien symbolique sur /run/systemd/journal/dev-log
.
#14 Updated by Daniel Dehennin over 6 years ago
- % Done changed from 0 to 100
- Remaining (hours) changed from 2.0 to 0.25
#15 Updated by Scrum Master over 6 years ago
- Status changed from En cours to Résolu
#16 Updated by Joël Cuissinat over 6 years ago
- Status changed from Résolu to Fermé
- Remaining (hours) changed from 0.25 to 0.0
Test OK