[vz-users] Middelware selber füllen per Script

Thorben Thuermer r00t at constancy.org
Thu Jan 24 00:39:03 CET 2013


On Wed, 23 Jan 2013 22:24:28 +0100
Michael Martin <Michael.glh at gmx.de> wrote:
> Ich habe ein PHP script geschrieben, was mir eine Webseite (SolarLog200 
> aktuelle Leistungsdaten) abholt, Daten ausliest und in die Middelware 
> schreibt (alles auf einem Raspberry).
> Wenn ich das Script im Terminal aufrufe klappt das prima.
> 
> Wenn ich per crontab das script starte, dann tut es nichts. Was habe ich 
> übersehen?

wie genau kommst du darauf, das es "nichts" tut?
bist du denn sicher, ob es ueberhaupt gestartet wird?

> # min ,hour, day of month, month, day of week (0 und 7=Sonntag)
> * * * * * /usr/bin/php /home/pi/sl200.php >/dev/null

sieht OK aus eigentlich,
nur das >/dev/null solltest du mal rausnehmen,
wenn du ein problem debuggen willst..

bei cron gibt es ein paar dinge zu beachten,
dann gibt's eigentlich nie grosse probleme:
* wenn die crontab ungueltig ist, wird sie einfach garnicht ausgefuehrt,
  und es gibt keinerlei meldung (meiner erfahrung nach),
  am besten mal einen test-job eintragen,
  oder im syslog (idr. /var/log/daemon.log) nachlesen, ob dein job auch
  ausgefuehrt wird.
* die ausgabe von cronjob wird per e-mail verschickt.
  um mitzubekommen wenn es probleme gibt, solltest du sicherstellen,
  das du diese mails auch erhaeltst!
  das erfordert ein funktionierendes lokales mailsystem,
  und ggfs sollte an in der crontab mit MAILTO= einen account eintragen,
  den man auch liest (oder einen forward einrichten).
  (entsprechend cronjob sollten so geschrieben sein, das sie im erfolgsfall
   keine ausgabe erzeugen, um eine unnoetige mail-flut zu vermeiden)

und ggfs noch:
* wie MrUniversum schon schrieb, umgegungsvariablen haben oft ungewohnte
  werte, insbesondere zB $PATH, so dass programme nicht gefunden werden.
- jeden aufruf einzeln zu pruefen sollte aber nicht noetig sein,
  zumal die meisten programme auch eine fehlermeldung ausgeben.
-  zB auf produktivsystemen in der firma ist aber ein "set -e" im
  script ein muss, damit das script bei nicht behandelten fehlern
  abbricht, und nicht mit ungueltigen daten weiterarbeitet.

> Kann es daran liegen dass ich schon im rc.local ein Endlos script laufen 
> habe, dass meinen Stromzähler immer zyklisch anspricht?

warum sollte es?

> Grüße
> Michael

- Thorben


More information about the volkszaehler-users mailing list