Honnan tudom miért nem fut le a cron.php?

takacsot képe

Be van állítva a cron.php futtasa óránként. Rendszeresen azt kapom, hogy (és itt most jön a műsolat a legutolsó napló bejegyzésekből):

Részletek
Típus	időzítő
Dátum	szombat, augusztus 21, 2010 - 14:01
Felhasználó	Anonymous
Hely	http://www.qualityontime.eu/cron.php
Hivatkozó	
Üzenet	Az időzített feladatok futtatása több mint egy órát vett már igénybe, feltehetően valamilyen hiba miatt.
Szint	hiba
Hosztnév	195.70.57.140
Műveletek	

Honnan tudom meg, hogy miért nem fut le? Hol nézzem meg? (Lehetsz technikai, mert informatikus vagyok)

Mikor kézzel futtatom, akkor már csak annyit látok a naplóban, mint warning: "Az időzített feladatok futtatásának kísérlete, miközben ezek futnak."

Megjegyzés: Korábban a kézi futtatásra MySql hiba jött fel, ami a drupal_watchdog táblára panaszkodott. Erre fogtam magam és kitakarítottam a táblát, plusz az drupa_session táblát is (mert az piszok nagy lett - nem is értem miért nincs benne a cron.php-ban, hogy tisztogassa!)

szantog képe

Gyorshelp: Van-e valamilyen rules által kezelet átirányítás az oldalon, content is going to be viewed eseményre? Én ezt nyaltam be párszor.
Továbbá: http://drupal.org/project/modules?filters=drupal_core%3A87&text=cron
Ezek közül ha jól emlékszem a Supercron volt az, amivel ezt sikerült debugolni, de ahogy nézem, az első is jó lehet erre.

0
0

----
Rájöttem, miért kérdezek olyan ritkán a drupal.hu-n. Amíg szedem össze az infokat a kérdéshez, mindig rájövök a megoldásra.

Illyés Edit képe

A variables táblából töröld a cron_semaphore-t, és ürítsd a gyorstárat. Utána próbáld újra lefuttatni. Gyakori probléma, hogy a kereső túl sok tartalmat próbál beindexelni, ezt lehet csökkenteni az /admin/settings/search oldalon. Másik gyakori ok valamilyen rosszul beállított átirányítás.

Ha továbbra sem jó, akkor egy kicsit nyomozgatni kell, hogy meddig fut le és pontosan melyik MODULNEVE_cron implementációnál hasal el. Ha már látod, hogy melyik modulban van a gond, akkor onnan már viszonylag könnyen lehet debuggolni.

A session tábla tisztogatása gondolom azért marad el, mert Debian/Ubuntu rendszeren vagy: Debian és Ubuntu szervereken a Drupal sessions tábla túl nagyra nő.

0
0
takacsot képe

Beletettem a logolást és az alapján 1 percen belül eljut a linkchecker modulhoz és onnan kezdve semmit sem látok történni. A nem ellenőrzött linkjeim száma sem csökkent.

Mi lehet a következő lépés?

0
0
aries képe

Növeld a cron.php számára a PHP futási idejét jó nagyra.

0
0
Illyés Edit képe

Gondolj bele, a Linkchecker egyenként végignéz minden kifelé mutató linket a webhelyeden, hogy él-e még. Ha nagyobb webhelyed van sok linkkel, akkor nem csoda, hogy sokáig tart.

Következő lépés: kikapcsolni a modult. :)

Gondold végig, hogy mennyire fontos a számodra ez a szolgáltatás. Alapvetően ez a linkelt webhelyek dolga és érdeke lenne, hogy a régi URL-jeikről átirányítsanak, stb. Intraneteken, vagy ahol fontos, ott ki lehet erre dolgozni egy stratégiát, hogy mondjuk havonta egyszer futtatjuk az ellenőrzést. Akkor ahogy Aries is írta, átmenetileg meg kell növelni a max_execution_time-ot, hogy végezhessen a PHP a feladattal.

0
0
takacsot képe

Végül az lett a megoldás, hogy kikapcsoltam a linkcheckert. A Szolgáltatóm azt mondta, hogy külön kérésre és külön pénzért fel tudja emelni a jelenlegi 30 sec-es max válaszidőt akár 90 sec-re is.

A linkellenőrzésre majd használok valami mást.

Említetted, hogy a link a linktulajdonos felelőssége azért mégis az én oldalamat minősíti le, ha halott link van rajta.

0
0
york képe

Probald meg sajat koddal, ami batch apit hasznal, igy az ido nem fogy el. Azt nem tudom, hogy cron-ba hogy tudod tenni, a hook_cronba sehogy, de talan sajat utvonalra teve megoldhato lehet.

0
0
aries képe

Elképzelhető, hogy alulméretezted a PHP futási idejét, így azelőtt ki lett lőve, ahogy az Edith által említett változókat visszaállította volna.

0
0