[Slackware 10] logging van cronjobs

Pagina: 1
Acties:

  • mcB
  • Registratie: Mei 2002
  • Laatst online: 07-02 16:11
Ik heb een tijdje gezocht om uit te zoeken waarom de uitvoering van cronjobs niet wordt gelogd. Normaal gesproken zou logdata te vinden moeten zijn in /var/log/cron, maar bij mij blijft die file leeg.

uit syslog.conf
code:
1
2
# Cron related logs:
cron.*                          -/var/log/cron


Ik heb ongeveer 10 cronjobs staan die het allemaal doen, alleen het loggen gaat dus niet goed.

Wat mij betreft mag het bericht dat een cronjob is uitgevoerd best wel in 'messages', maar ik heb geen idee waarom dat het loggen niet werkt, laat staan dat ik weet hoe ik het naar 'messages' laat wegschrijven.
Kan iemand mij hiermee op weg helpen?

[ Voor 10% gewijzigd door mcB op 18-04-2005 07:30 ]

Strix (Skullflame)


  • MTWZZ
  • Registratie: Mei 2000
  • Laatst online: 13-08-2021

MTWZZ

One life, live it!

Snapt je cron daemon wel dat ie naar syslog moet loggen? (zonder syslog gecompiled oid) Misschien kun je proberen syslogd opnieuw te starten (killall -HUP syslogd) dat de configuratie opnieuw geladen wordt als je dat nog niet gedaan hebt.

Nu met Land Rover Series 3 en Defender 90


  • mcB
  • Registratie: Mei 2002
  • Laatst online: 07-02 16:11
Het is een standard 'out-of-the-box' niet-grafische slackware installatie.
Ik heb syslogd al meerdere keren gerestart en ook dat mocht niet baten.

Strix (Skullflame)


  • Booster
  • Registratie: Februari 2000
  • Laatst online: 24-01 17:08

Booster

Superuser

Wat doet dat minteken voor het path naar /var/log/cron?

Bovendien, volgensmij geeft de cron in principe nooit messages uit binnen *.info en *.notice. Alleen binnen *.error e.d. als er iets fout gaat. Tenminste, dat is bij mijn Slackware 8.1 wel zo.

Check ook de manuals voor syslogd en syslog.conf over hoe je de syslogd kunt configgen.

[ Voor 23% gewijzigd door Booster op 18-04-2005 13:58 ]

The cake is a lie | The Borealis awaits...


Verwijderd

Als je in je crontab kijkt, zal je zien dat (als het tenminste niet om zelf toegevoegde cronjobs gaat, maar je je cronjobs hebt toegevoegd in /etc/cron.*) hier staat
code:
1
47 * * * * /usr/bin/runparts /etc/cron.hourly 1> /dev/null

m.a.w. alle standaardoutput van de cronjobs wordt naar /dev/null gestuurd. Alleen fouten zullen worden gelogd.

  • mcB
  • Registratie: Mei 2002
  • Laatst online: 07-02 16:11
Booster schreef op maandag 18 april 2005 @ 13:56:
Wat doet dat minteken voor het path naar /var/log/cron?

Bovendien, volgensmij geeft de cron in principe nooit messages uit binnen *.info en *.notice. Alleen binnen *.error e.d. als er iets fout gaat. Tenminste, dat is bij mijn Slackware 8.1 wel zo.

Check ook de manuals voor syslogd en syslog.conf over hoe je de syslogd kunt configgen.
Het minteken hoort er te staan. Daar heb ik niets aan gewijzigd.
Het feit dat er staan cron.* geeft toch eigenlijk al aan dat op alle loglevels gelogd wordt.
Verwijderd schreef op maandag 18 april 2005 @ 14:06:
Als je in je crontab kijkt, zal je zien dat (als het tenminste niet om zelf toegevoegde cronjobs gaat, maar je je cronjobs hebt toegevoegd in /etc/cron.*) hier staat
code:
1
47 * * * * /usr/bin/runparts /etc/cron.hourly 1> /dev/null

m.a.w. alle standaardoutput van de cronjobs wordt naar /dev/null gestuurd. Alleen fouten zullen worden gelogd.
Het gaat bij mij idd om zelf toegevoegde cronjobs. Van sommigen laat ik de ouput direct naar /dev/null sturen, van sommigen ook niet. Bij geen van deze jobs verschijnt er ook maar 1 regel in het log.

Strix (Skullflame)


  • Booster
  • Registratie: Februari 2000
  • Laatst online: 24-01 17:08

Booster

Superuser

mcB schreef op maandag 18 april 2005 @ 16:00:
Het minteken hoort er te staan. Daar heb ik niets aan gewijzigd.
Het feit dat er staan cron.* geeft toch eigenlijk al aan dat op alle loglevels gelogd wordt.
Ok, het minteken ben ik niet mee bekend, staat ook niet in mijn manual page geloof ik, maar als hij er al stond moet je hem lekker laten staan.

De * geeft idd aan dat er op alle loglevels gelogd wordt, maar aangezien de cron zijn output niet naar info of notice stuurt heb je hier dus nauwelijks iets aan.
Standaard wordt de output van een cronjob naar het uitvoerende systeemaccount gemailt. (Mits niet naar /dev/null gepip'ed inderdaad), hier zul je je gewenste output dus moeten zoeken.

The cake is a lie | The Borealis awaits...


  • mcB
  • Registratie: Mei 2002
  • Laatst online: 07-02 16:11
thx Booster voor de info; echter .. geen mail in de inbox.
Ik wil eigenlijk niet de ouput van een cronjob in log of mail, maar alleen de melding dat de cron-event heeft plaatsgevonden. Dat zou genoeg zijn.

Strix (Skullflame)


  • Hans
  • Registratie: Juni 1999
  • Niet online
Zoals je in de comments van het init script /etc/rc.d/rc.M had kunnen lezen is dat een kwestie van een command line switch van crond aanpassen

Dus even rc.M editten en van -l10 iets van -l8 maken


code:
1
2
3
4
5
6
# Start crond (Dillon's crond):
# If you want cron to actually log activity to /var/log/cron, then change
# -l10 to -l8 to increase the logging level.
if [ -x /usr/sbin/crond ]; then
  /usr/sbin/crond -l10 >>/var/log/cron 2>&1
fi

[ Voor 10% gewijzigd door Hans op 19-04-2005 00:11 ]


  • mcB
  • Registratie: Mei 2002
  • Laatst online: 07-02 16:11
Beetje laat, want ik heb de hele dag ziek op bed gelegen, maar bedankt d:)b
Dat was precies waar ik naar op zoek was!

Ik moet trouwens eerlijk zeggen dat ik nou niet meteen alle initscripts ga doorzoeken om een cronlogging probleem op te lossen. Dus ik HAD het kunnen lezen, maar een duw in de goede richting van iemand die de oplossing weet wordt zeer gewaardeerd.

Strix (Skullflame)

Pagina: 1