Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[vdr] Re: Heartbeat for VDR



Jan Ekholm wrote:
> 
> On Fri, 3 Oct 2003, Klaus Schmidinger wrote:
> 
> >Jan Ekholm wrote:
> >>
> >> Hi all,
> >>
> >> Our VDR box has two leds that I use to indicate "recording in progress"
> >> and "VDR is on". However I'd like to make one led flash when VDR has died
> >> for some reason, or the stream has been broken, actually for anything that
> >> would require a restart.
> >>
> >> Flashing the led is easy, as is restarting VDR. The harder part is to get
> >> some kind of "heartbeat" from VDR so that my plugin/patch knows that VDR
> >> is alive and healthy. What would be a good place to put in such a probe? A
> >> normal plugin has the Housekeeping() method, but it is not guaranteed to
> >> be called regularly. I'd like to be able to be notified/probe maybe once a
> >> minute or something like that.
> >>
> >> One solution could be to create a device and attach it to the stream? That
> >> would let my plugin get notified often enough, and it would just skip the
> >> data and do nothing with it. What happens for a broken stream? Does the
> >> attached device still get called with null data?
> >>
> >> Or is there some much better way of doing this? The main idea is to have
> >> the plugin/patch somehow write out a timestamp that an external app can
> >> monitor, and when the timestamp is too old VDR is assumed dead and will be
> >> restarted.
> >
> >VDR already has its very own watchdog feature that initiates
> >a restart in case something goes south.
> >
> >Have you tried the --watchdog option yet?
> 
> Yes, but it has never restarted anything for me, at least nothing that has
> shown up in the log. Buffer overruns probably don't warrant a restart, and
> outright crashes are impossible for it to catch, but I've seen the image
> die with stream corruption (or similar) and VDR bail out due to errors and
> still no restart. And it sure is enables, as VDR logs:
> 
>         ...
>         19:07:17 vdr[333]: setting watchdog timer to 60 seconds
>         ...

If the program crashes, the surrounding shell script (typically 'runvdr')
should stay in the loop and reload the driver and VDR. Maybe your
script doesn't do that?

Klaus


-- 
Info:
To unsubscribe send a mail to ecartis@linuxtv.org with "unsubscribe vdr" as subject.



Home | Main Index | Thread Index