Anomalie #1033
fermé
Les cron drupal ne sont plus lancés.
Ajouté par theo _ il y a environ 12 ans.
Mis à jour il y a environ 8 ans.
Description
Salut,
pour ajouter un droit à quelqu'un j'ai du me connecter en admin sur le
Drupal www.april.org (login : april passwd : voir le wiki).
En allant sur http://www.april.org/admin/ j'ai eu :
« Un ou plusieurs problèmes ont été détectés dans votre installation de
Drupal. Vérifiez le tableau de bord pour plus d'information.»
Je vais sur
http://www.april.org/admin/reports/status
Etat de mise à jour de Drupal core Pas de données de mise à jour disponible
Aucune information n'est disponible à propos de nouvelles versions de
vos modules et thèmes actuellement installés. Pour vérifier les mises à
jour, vous pouvez lancer le cron ou vérifier manuellement. Veuillez
noter que la verification des nouvelles mises à jour peut prendre un
certain temps, soyez patient.
Pré-requis Date TimeZone Le lien nom du fuseau horaire du site est
probablement incorrect.
Tâches de maintenance cron Dernière exécution il y a 2 semaines %count jours
Cron n'a pas été lancé récemment. Pour plus d'informations reportez-vous
à l'entrée sur la configuration du Cron du manuel en ligne. Vous pouvez
lancer le cron manuellement.
Librement,
Fred.
À priori un lancement manuel ne retourne pas d'erreur.
Le statut est repassé à ok dans l'admin.
Reste à voir pourquoi il ne se lance pas tout seul.
$ drush core-cron
WD aggregator: The feed from Planète April seems to be broken, due to "-111 Connection refused". [warning]
WD aggregator: The feed from essai redmine seems to be broken, due to "404 Not Found". [warning]
WD php: Invalid argument supplied for foreach() in /usr/share/drupal6/modules/taxonomy/taxonomy.module on line 1293. [error]
WD php: Invalid argument supplied for foreach() in /usr/share/drupal6/modules/taxonomy/taxonomy.module on line 1293. [error]
WD php: Invalid argument supplied for foreach() in /usr/share/drupal6/modules/taxonomy/taxonomy.module on line 1293. [error]
WD php: Invalid argument supplied for foreach() in /usr/share/drupal6/modules/taxonomy/taxonomy.module on line 1293. [error]
Cron run successfully. [success]
Invalid argument supplied for foreach() in /usr/share/drupal6/modules/taxonomy/taxonomy.module on line 1293. [warning]
Invalid argument supplied for foreach() in /usr/share/drupal6/modules/taxonomy/taxonomy.module on line 1293. [warning]
Invalid argument supplied for foreach() in /usr/share/drupal6/modules/taxonomy/taxonomy.module on line 1293. [warning]
Invalid argument supplied for foreach() in /usr/share/drupal6/modules/taxonomy/taxonomy.module on line 1293. ]] [[]]
Au passage, on a trois mises à jour de sécurité à faire au plus vite.
- Statut changé de En cours de traitement à Fermé
- Version cible mis à Novembre 2012
- % réalisé changé de 0 à 100
Le problème vient du fait que le script ne se trouve plus à l'endroit attendu.
lsd:~# grep cron /etc/cron.d/drupal6
0 0 * * * www-data [ -x /usr/share/drupal6/scripts/cron.sh ] && /usr/share/drupal6/scripts/cron.sh &> /dev/null
lsd:~# find /usr/share/drupal6/ -iname '*cron*'
/usr/share/drupal6/backup/modules/20120718143643/drupal/scripts/cron.sh
/usr/share/drupal6/backup/modules/20120718143643/drupal/cron.php
/usr/share/drupal6/scripts/cron-curl.sh
/usr/share/drupal6/scripts/cron-lynx.sh
/usr/share/drupal6/cron.php
Plusieurs solutions possibles :
- Recopier le fichier /usr/share/drupal6/backup/modules/20120718143643/drupal/scripts/cron.sh dans /usr/share/drupal6/scripts/cron.sh
- Configurer et utiliser /usr/share/drupal6/scripts/cron-curl.sh
- Utiliser /usr/share/drupal6/cron.php (c'est peut être deprecated)
J'ai utilisé la première solution. Le cron devrait tourner à minuit (dans 45 minutes).
- Statut changé de Fermé à En cours de traitement
- % réalisé changé de 100 à 90
(11:32:46 PM) dachary: theocrite: est-ce qu'il y a un effet de bord autre que la page qui démontre que le cron a bien tourné ?
(11:33:29 PM) dachary: est-ce qu'il serait possible de faire un user de monitoring qui ait acces a cette page et pas grand chose d'autre pour que zabbix puisse se logger dessus et vérifier la bonne santé du cron ?
On peut regarder la ligne value='cron_last' de la table drupal6.variable.
Elle contient le timestamp du dernier run de cron.
Ce qui au passage nous permet de voir que le dernier cron s'est bien lancé à minuit et donc que la modif a fonctionné :
date -d @$(mysql drupal6 -s -N -u root -p -e 'select value from variable where name="cron_last"' | tr -cd [0-9])
Enter password:
mardi 20 novembre 2012, 00:00:28 (UTC+0100)
Pour le monitoring zabbix, il suffira de créer un user qui ait les droits en read only sur cette table.
- Version cible changé de Novembre 2012 à Décembre 2012 (1/2)
- Version cible changé de Décembre 2012 (1/2) à Décembre 2012 (2/2)
- Priorité changé de Normale à Immédiate
- Version cible changé de Décembre 2012 (2/2) à Backlog
- Version cible changé de Backlog à Janvier 2013
- Version cible changé de Janvier 2013 à Backlog
- Version cible changé de Backlog à Avril 2013
- Version cible changé de Avril 2013 à Backlog
- Description mis à jour (diff)
A priori ce n'est plus d'actu.
- Statut changé de En cours de traitement à Fermé
Formats disponibles : Atom
PDF