Kører dagligt PHP-scraper mod DOFbasen, logger output og rydder gamle logfiler
Definerer PROJECT_DIR og navngiver logfilen med dags dato — én logfil per dag med formatet scraper_YYYYMMDD.log.
mkdir -p logs/ sikrer at log-mappen eksisterer ved første kørsel. -p betyder ingen fejl hvis den allerede findes.
Skriver en separator-linje og tidsstempel til logfilen. Gør det nemt at se præcis hvornår en kørsel begyndte.
cd "$PROJECT_DIR" || exit — hvis mappen ikke eksisterer afslutter scriptet øjeblikkeligt. Nødvendigt for at scraper.php kan finde relative stier.
/usr/bin/php scraper.php køres med fuld sti til PHP-binæren (vigtigt i cron-miljø). Både stdout og stderr (2>&1) gemmes i logfilen via >>.
Skriver afslutnings-tidsstempel til logfilen. Differensen mellem start og slut viser kørseltiden for scraper.php.
find -mtime +30 -delete sletter logfiler ældre end 30 dage. Med én logfil per dag svarer det til maks. 30 logfiler på disk.
| Variable | Beskrivelse |
|---|---|
| PROJECT_DIR | Rod-mappe for fugle-projektet |
| LOG_FILE | Daglig logfil med dato i filnavn |
| 30 dage | Retention for logfiler |
Én ny fil per dag, automatisk navngivet:
Format: scraper_ÅÅÅÅmmdd.log — maks. 30 filer bevares
PHP Brug altid /usr/bin/php — cron har ikke PATH sat op som din shell
Log Fejl fra PHP vises også i logfilen pga. 2>&1
Test Kør scriptet manuelt første gang: bash cron_scraper.sh
Timing Kør efter DOFbasen er opdateret — typisk sen aften