Cron run failed....

Events happening in the community are now at Drupal community events on www.drupal.org.
jessan73's picture

Har letat på nätet och hittar inte någon lösning på ett nytt problem som jag stött på till en site jag försöker skapa, kanske ni vet hur jag ska komma vidare.
Efter att ha försökt att installera update status modulen utan framgång så kom jag på ett sätt att få igång den. Jag avinstallerade de flesta moduler och på så sätt fick jag igång den, men nu fungerar inte cron , så jag kan inte se om några moduler behöver uppdateras.
Har ni någon ide hur jag ska få igång Cron? Databasuppdateringen får jag inte igång hur jag än kör update.php. kör nu 6.16

mvh jessica

Comments

Felmeddelanden

chosig's picture

Du får inga felmeddelanden?

--
Hjälper gärna (pro bono) de som vill lära sig Drupal (fast jag är inte i "Drupal Nirvana" än), vill någon ha professionell hjälp har jag ett företag också.

Viktigt att ha igång update status?

jessan73's picture

Inga felmeddelanden, förutom att då jag testar att köra manuellt så kommer meddelandet att "Cron run failed"...Läst att Update status kan strula till cron run...är den viktig att ha igång eller kan man skippa den?

Har inget strulande cron så

Letharion's picture

Har inget strulande cron så kan inte kontrollera, men troligen skriver cron ett mer detaljerat fel meddelande till syslog, vilket i sin tur normalt sett är /var/log/messages

Kom på att cron kan ju skriva till syslog utan att krångla, och mycket riktigt så har jag meddelanden från cron i messages.

Hittar inte sidan

jessan73's picture

Hur kan man hitta felmeddelanden då man inte kommer åt dom på /var/log/messages....skriver in i webbläsaren på detta sätt www.mysite.se/var/log/messages men page not found kommer istället....aktiverat modulen syslog såklart.

MVH Jessica

Lite chans...

sl27257's picture

Det är bara en liten chans att du kommer åt /var/log/messages om du inte själv har fulla privilegier på din (egen) maskin. Det krävs i princip alltid att du har root-privilegier, alltså fulla administrationsprivilegier på den. Detta av säkerhetskäl. (Och skulle du göra det utan att vara root skulle jag byta leverantör... :) ) Dessutom är det nog bara om du kör på en Linux / Unix maskin som filer heter så (Någon annan som vet bättre vad det gäller Mac/Windoze får rätta mig om jag har fel)

Alltså krävs det andra metoder för att leta reda på ditt problem... Nedanstående funkar om du kör något "Linux"-system alltså vad som dagligen kallas LAMP.

1) Har du en riktig cron eller har du en "Poor mans cron" eller vad modulen heter?

2) Vilket filnamn har du skrivit in som det som cron skall köra?

3) Om du har "shell-access" (skal-access) skriv in följande kommandon i ett shell-fönster:

3a) ls -l fil-enligt-2-ovan

3b) which lynx

3c) which curl

3d) (cd din-drupal-map; ls -l scripts)

4) Hur ser dina din-drupal-mapp/scripts/cron-lynx.sh och din-drupal-mapp/scripts/cron-curl.sh filer ut?

Mvh

/Thomas

Drupalnovis här :)

jessan73's picture

Ok eftersom jag har min sida på manufrog så har jag ju inga adminprivillegier....I c-panel så skrev jag in detta:
php /home/mysite/public_html/cron.php men det funkade inte...Likaså då jag försöker köra cron manuellt högst upp till vänster i administrationsmenyn så får jag cron run failed...har alltså inte poormanscron eller annan cronmodul installerad förrutom drupals.
Så ska jag fråga manufrog om det finns shell som jag kan använda?
Under punkt 4 ...de filerna har jag inte ändrat utan är drupals 6.16.

mvh Jessica

OK då är jag med!

sl27257's picture

Jag har alltid gjort så här på mina maskiner. Har aldrig kört cron.php direkt. Men det går utmärkt att göra kom jag just på / fram till :) .

Min variant:

Låt cron köra filen /home/mysite/public_html/scripts/cron-lynx.sh istället. Det skall inte stå php eller något först på raden. I denna fil måste du då byta ut så att lynx kör http://din-site/cron.php istället för http://exampel.com/cron.php som det står från början.

Sedan gäller det då att de har lynx (eller curl) installerat på systemet. Därav testerna "which lynx" osv.

Din variant:

Alternativet är att göra som du tänkt. Men på mina maskiner går det ej att skriva php eller php5. Jag behöver skriva php5-cgi istället för php som du skrivit först på din rad. Om jag skriver php får jag samma felmeddelande som du. Så det snabbaste för dig är kanske att prova att byta ut php till php5-cgi.

/Thomas

Vet inte om detta funkade...

jessan73's picture

Nu har jag fått detta via eposten då jag ställde in cron via cpanels cronjob.
Men går jag till min site och försöker köra run cron via adminmenyn så funkar det inte...

X-Powered-By: PHP/5.2.12
Set-Cookie: SESS064e310c709865db2205968402a62964=3a2c179b50eafd4e224485cf836d9322; expires=Wed, 19-May-2010 20:33:21 GMT; path=/
Expires: Sun, 19 Nov 1978 05:00:00 GMT
Last-Modified: Mon, 26 Apr 2010 17:00:01 GMT
Cache-Control: store, no-cache, must-revalidate
Cache-Control: post-check=0, pre-check=0
Content-Type: text/html; charset=utf-8

mvh jessica

Halvt rätt...

sl27257's picture

Meddelandet du får via mail är vad jag får när min cron exekveras rätt via php5-cgi.

Varför det inte fungerar via admin menyn är svårare att svara på... Det är nämligen samma anrop som görs efter ett tag i båda fallen.

Får du

Cron run completed.

i loggen på http://din-site/admin/reports/dblog när du kört det via cpanel / cron?

Hur ser du att det inte fungerar när du kör det från:

http://din-site/admin/reports/status/run-cron

Står det något i loggen? Får du en vit sida?

/Thomas

Cron run failed!

jessan73's picture

http://din-site/admin/reports/dblog ... laddar jag denna sida kommer jag till status report som visar detta: Cron maintenance tasks Never run
Cron has not run. For more information, see the online handbook entry for configuring cron jobs. You can run cron manually.
http://din-site/admin/reports/status/run-cron...laddar jag denna kommer rutan upp fel cron run failed (har modulen better messages igång).
Är det så att jag lyckats radera någon databas som hör till dblog eller cron?

mvh Jessica

Kör detta

sl27257's picture

Skriv så här i din browser:

http://din-site/cron.php

Då skall cron köras... Om allt går rätt slutar det med en vit sida när din browser tycker att den är färdig. Du behöver inte vara inloggad för att köra det. Dessutom skall du få ett meddelande i loggen.

Om det inte blir rätt så är det något fel i någon modul som anropas av cron vad jag förstår. Alla moduler kan registrera sig så att de körs av cron. Jag har haft problem med att en modul tar så långt tid att den avsatta tiden tar slut och då får man ibland konstiga felmeddelanden i loggen. Hur långt tid tar det innan felmeddelandet kommer upp?

En bit ner på denna sida

http://din-site/admin/reports/status/php

hittar du:

max_execution_time värde1 värde2

Det är hur långt tid du har satt att ett kommando (jobb, sida) (värde1) får köra samt hur långt tid installationen tillåter (har satt) (värde2) tiden. Är denna för kort stoppas cron. Har man många moduler som gör tunga saker kan tiden ta slut.

Då återstår att räkna ut vilken modul det är som bråkar. Tyvärr varierar kvaliteten väldigt mellan olika moduler :(

Verkar ta för lång tid....

jessan73's picture

får en lång lista på sidan då jag kört cron.....Warning: MySQL server has gone away query: SELECT * FROM system WHERE type = 'theme' in /home/my-site/public_html/includes/database.mysql.inc on line 128...

Får testa att ladda upp en annan databas som funkar att köra cron på xampp på min dator...tyvärr är det en äldre version så jag får komplettera den så den blir lika den på nätet.

Tänkte bara om det var nåt enkelt så hade man kunnat fixa den aktuella sidan på nätet och slippa ta en gammal version, för gissar att Cron är viktigt att få till så den körs.

mvh jessica

Nu har jag kommit åt senaste

jessan73's picture

Nu har jag kommit åt senaste loggningarna och detta visade....Cron has been running for more than an hour and is most likely stuck.
Nån aning hur jag går vidare?

mvh Jessica

Säger tyvärr inte så mycket

sl27257's picture

Felmeddelandet du får säger tyvärr inte så mycket. Det betyder bara att cron hittar att det startat (det finns en semafor) men inte att det slutat snyggt (semaforen har inte tagits bort). Cron har alltså kraschat på något sätt innan det kom till slutet...

Jag tror att du måste börja försöka leta reda på vilken modul det är som kraschar. Själv hade jag börjat med att ta reda på vilka av modulerna du har som hänger på sig på cron-hooken.

$ cd /dinsökväg/site/all/modules
$ grep _cron */* | grep function
$ grep _cron */*/* | grep function

Borde räcka... (Jag förutsätter att det är någon sort Linux variant som körs. Annars borde man kunna göra samma sak med en filhanterare)

Hos mig blir det:

$ grep _cron */* | grep function
image/image.module:function image_cron() {
ldap_integration/ldapauth.module:function ldapauth_cron() {
mailhandler/mailhandler.module:function mailhandler_cron() {
webfm/webfm.module:function webfm_cron() {
$ grep _cron */*/* | grep function
filefield/filefield_meta/filefield_meta.module:function filefield_meta_cron() {

Sedan hade jag letat på Drupal.org efter om det finns något dokumenterat om problem med cron för dessa moduler.

I fallet ovan hos mig alltså modulerna: "image" "ldap_integration" "mailhandler" "webfom" samt "filefield"

Kanske inte den bästa metoden men den funkar... :)

Annars kan du helt enkelt bara söka bland Drupals grupper efter problem med cron.

/Thomas

Tackar :)

jessan73's picture

Då ska jag fortsätta leta på nätet :)
Nåt som dök upp nu i huvudet är ju att cron fungerar då jag kör den på xampp men alltså inte då jag för över den på manufrog....undrar om jag ska ladda upp alla moduler jag har på den lokala så att det är samma versioner som på den på nätet som låser sig :)

MVH Jessica

Sweden

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: