epgd und so weiter ...

  • Hallo liebe Mitstreiter!


    Nachdem ich vor einigen Tagen ein apt-get dist-upgrade ausgeführt hatte, verschwand mein geliebter epg. Soweit ich es verstanden habe, liegt das am aktualisierten epg2vdr, der nun Stand vdr 2.2.0 epg2vdr 1.1.56-GIT (24.03.2017) ist. Also habe ich nach Anleitung den aktuellen epgd gebaut (Stand epgd 1.1.114-GIT (23.03.2017) ), zusammen mit dem passenden Plugin. ;)
    Anschließend habe ich die Datenbank gedroppt, neu anlegen lassen und die Funktionen aus mysqlepglv.so neu in MariaDB bekannt gemacht.
    epgd läuft bei mir auf einem debian jessie ohne weitere vdr-Komponenten, was bisher auch wunderbar funktionierte.


    Seit der Umstellung gibt es nun das Problem, dass systemd glaubt, epgd liefe nicht korrekt. Konkret macht sich das so bemerkbar, dass ich, wenn ich epgd mittels sudo systemctl start epgd.service starte, 5 Minuten auf ein Prompt warte, anschließend behauptet systemd, der Dienst sei nicht erfolgreich gestartet worden. Wenn ich aber per sudo journalctl -f ins Journal schaue, sehe ich epgd fröhlich werkeln, auch die Datenbank füllt sich.
    Das eine ist also, dass systemctl status epgd.service folgende Ausgabe ergibt:

    Code
    1. udo1toni@sql:~$ systemctl status epgd.service
    2. ● epgd.service - vdr-epg-daemon manages EPG data in a MySQL database
    3. Loaded: loaded (/lib/systemd/system/epgd.service; enabled)
    4. Active: activating (start) since Do 2017-04-06 10:28:59 CEST; 3min 35s ago
    5. Main PID: 13567 (epgd)
    6. CGroup: /system.slice/epgd.service
    7. └─13567 /usr/bin/epgd -n


    Die andere Konsequenz ist, dass epgd so niemals bis zum Ende durchläuft, weil es ja nach 5 Minuten immer wieder von vorne beginnt. Genauso lässt sich der Dienst auch sauber nicht anhalten (nach systemd-Meinung). Das gleiche Verhalten zeigt epghttpd auf dem gleichen Rechner. Witzigerweise reicht es aber, einfach von der Kommandozeile aus epghttpd aufzurufen und die Seite ist umgehend erreichbar.


    Eine weitere Merkwürdigkeit ist, dass Bilddateien speziell aus tmdb nur ab und zu erfolgreich geladen werden, oft gibt es ein http Code 429, was laut API Doku eine Überschreitung des Downloadlimits wäre. Ich habe mir einen eigenen API-Key besorgt, aber die Fehlermeldung bleibt. Allerdings scheint immer mal wieder eine Datei erfolgreich in der Datenbank zu landen, früher (ich hab es, glaube ich, Anfang 2016 in Betrieb genommen, noch mit der Nicht-epghttpd-Variante) sind die Bilder gefühlt "sofort" in der Datenbank gewesen.


    Irgendetwas muss ich falsch machen, aber ich hab keine Ahnung, wo der Fehler liegt, der epgd-Dienst läuft ja "irgendwie" schon erfolgreich.



    Bei epghttpd habe ich auch noch eine Frage: Muss ich auf den vdr-Rechnern, die die Aufnahmen ausführen, irgendwas konfigurieren, damit epghttpd dort Timer anlegen kann (also wenn ich die Suchtimer im epghttpd anlege)? Wenn epghttpd auf einem anderen Rechner läuft, wie kommen dann die Timer auf die angegebenen vdr-Maschinen? holen die sich die Timer direkt aus der Datenbank, oder muss das irgendwie angestoßen werden? Oder lasse ich die Suchtimer lieber unangetastet, solange meine vdr-Rechner noch nicht auf epghttpd umgestellt sind?

  • Eigentlich hat das mit yaVDR nichts zu tun, denn Ubuntu 14.04 (das als Basis für yaVDR 0.6 dient) nutzt ja immer noch Upstart als Init-System und Pakete für Debian kann Launchpad leider immer noch nicht bauen - also ist das eher ein Fall für http://www.vdr-portal.de/board…rd68-debian-und-derivate/


    Wie genau hast du epgd neu gebaut (Welche Quelle, Debian-Paket neu erstellt oder einfach nur make/make install ausgeführt (falls das der Fall ist: wie sah die Make.config aus)?) Wie sieht die epgd.service bei dir aus?

    Code
    1. systemctl cat epgd.service

    Was steht für epgd im Log?


    Wenn du die yaVDR epgd-Pakete als Basis für einen Rechner mit Debian nutzen willst, würde ich das epgd-Paket für xenial aus https://launchpad.net/~yavdr/+…ield.series_filter=xenial nehmen, das sollte sich mit Systemd ordentlich starten lassen.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Bei mir läuft epgd auf meinem Banana PI und dort hatte ich genau das gleiche Problem.
    Folgendes hat bei mir Abhilfe geschaffen:


    Unter ‚ /lib/systemd/system/epgd.service‘ den ‚Type‘ von ‚notify‘ auf
    ‚simple‘ ändern. Dann auf der Konsole ein ‚ systemctl daemon-reload‘. Jetzt sollte ein ‚systemctl start epgd‘
    zu einem Start innerhalb weniger Sekunden (oder sofort) erfolgen.


    Das gleiche dann gegebenfalls noch für epghttpd durchführen.


    Gruß Heiko

  • Den Typ notify darf man nur dann verwenden, wenn man epgd mit Unterstützung für sd_notify baut: https://projects.vdr-developer….git/tree/Make.config#n53

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • seahawks erster Satz hat schon gereicht, mich in die richtige Richtung zu schubsen :) Vielen Dank dafür. Nachdem ich die korrekte Build-Umgebung genutzt habe, klappt der Start (auch mit notify) perfekt und epgd läuft sauber durch. Jetzt bleibt nur noch das Problem mit übermäßig vielen nicht geladenen Bildern.