[ANNOUNCE] jonglisto-ng 0.2.3

  • Aber gibts das auch als Paket zum Installieren per "apt-get install"?

    Ich muss gestehen, daß ich keine Ahnung habe, wie Pakete erstellt werden. Auf die Schnelle habe ich kein Paket für TomEE gefunden, aber auf Launchpad eines für Payara (

    https://launchpad.net/payara), nur fürchte ich dies ist der Full-Server, der für die Applikation zwar funktioniert, aber doch ziemlicher Overkill ist.


    Auf der Github Seite habe sind verschiedene Varianten beschrieben den Server zu starten. Mit/Ohne Docker, Self-Running jar oder deployment in einem bestehenden Container.

    Das Plugin selbst funktioniert natürlich nur, wenn die gesamte VDR Infrastruktur vorhanden ist und da verlassen sie mich auch schon wieder, sobald es um Pakete geht.


    Zabrimus

  • Hallo Zabrimus,


    habe es jetzt in der letzten Version auch mal installiert. Sieht soweit ziemlich gut aus :-)


    Habe allerdings noch folgende Probleme:

    • Beim EPG View "Was läuft jetzt" bekomme ich keine EPG Daten angezeigt. Auch nicht wenn man auf den Button "Jetzt" klickt. Unter Programmübersicht sind aber die EPG Daten der einzelnen Sender vorhanden.
    • Gebe ich im EPG View "Suche" einen Suchtext unter "Titel", "Kurztext" oder "Langtext" ein, passiert nichts.
    • Meine Timer werden nicht in der Liste angezeigt. Prinzipiell scheinen sie da zu sein, weil die Tagesansicht oben mit grünen Balken/Bereichen und den Sendern erzeugt wird


    Habe Safari, Google Chrome und Firefox ausprobiert, scheint also nicht am Browser zu liegen.


    Hast du hier eine Idee?

    Server: Supermicro X9SAE, Intel Xeon E3-1245v2, ESXi 6.5

    VDR VM: Ubuntu 16.04 LTS, 2x DD Cine S2, VDR 2.3.8

  • Hi,


    Ja, jetzt bin ich hinreichend verwirrt. Ich wechsel permament zwischen Chrome 63 und Firefox 56. Ich habe gerade auch mal Vivaldi 1.13 probiert und sehe auch alles.


    Die EPG Daten einzelner Sender werden angezeigt, aber in "Was läuft jetzt?" ist nichts zu sehen? Intern wird das EPG zwischengespeichert und alle 12 Stunden (die Voreinstellung) aktualisiert.

    Alle vorhandenen Ansichten greifen auf dieselbe Datenbasis zu und filtern je nachdem, was dargestellt werden soll. Das betrifft auch die Suche.


    Auch die Timer werden nicht dargestellt, aber die Zeitleiste oben ist sichtbar und sinnvoll gefüllt? Auch hier gilt: Die Timer werden gelesen und dann im Grid dargestellt und aus den Daten wird auch die Zeitleiste erstellt.


    Also werden Daten gelesen, aber nicht dargestellt. Kannst Du denn die Tabellenheader (im Timer z.B. Kanal, Datum, Titel und dergleichen) sehen oder ist der ganze Bereich einfach leer? Wirft der Server irgendwelche Log-Meldungen oder besser Stacktraces?


    Ich habe viele Fragen, aber keine davon würde das Verhalten erklären. Verwendest du TomEE oder Payara? In welcher Version?

    Wenn die Konfiguration grundsätzlich falsch wäre, dann würde gar nichts angezeigt.


    Kannst Du mal schauen, ob der Grid-Connector im Debug-Window vorhanden ist? Wenn Du auf den Grid-Connector klickst, sollte eigentlich ein Großteil des Browserfensters markiert werden.
    Dazu muss du in der URL den Parameter "debug" hinzufügen, z.B. http://jonglisto-ng:8080/?debug#!timer und dann




    Wenn du auf die einzelnen Connectorn klickst, bekommst du ein Gefühl dafür, wie das Layout der Seite aufgebaut ist.


    Hast du die Applikation selbst gebaut, Docker-Hub verwendet oder das Archiv aus den Releases genommen? Ich frage, weil mir die Ideen ausgehen und ich eine Menge neuer Log-Meldungen einbauen kann um mich dem Problem zu nähern.



    Zabrimus

  • Ich kann eigentlich alle deine Fragen mit "Ja" beantworten.


    Habe gerade mal in die "catalina.out" geschaut und da kommt eine Exception bzgl. der channellogos nach der anderen. Sehe auch ein kleines Ausrufezeichen mit einer Exception wegen der channellogos in der Gui:



    Kann es sein, dass er zwingend channellogos voraussetzt?


    Nutze TomEE und habe selbst gebaut.

    Server: Supermicro X9SAE, Intel Xeon E3-1245v2, ESXi 6.5

    VDR VM: Ubuntu 16.04 LTS, 2x DD Cine S2, VDR 2.3.8

  • Jetzt schlägt das Bauen fehl:


    Muss man bei gradle auch sowas wie "make clean" machen?

    Server: Supermicro X9SAE, Intel Xeon E3-1245v2, ESXi 6.5

    VDR VM: Ubuntu 16.04 LTS, 2x DD Cine S2, VDR 2.3.8

  • Hi,


    danke für den Fix, das Übersetzten hat jetzt wieder funktioniert. Leider sieht es mit den Problemen nicht besser aus als zuvor. Wenn ich auf EPG klicke, dann bekomme ich im catalina.out folgenden Fehler:

    Server: Supermicro X9SAE, Intel Xeon E3-1245v2, ESXi 6.5

    VDR VM: Ubuntu 16.04 LTS, 2x DD Cine S2, VDR 2.3.8

  • Hmm? Mist... Hmm....
    Wie kommt der nur an dem catch-Block vorbei gekommen? Das ist noch eine normale Exception....


    Hmm. Ich denke, die Codegenerierung ist irgendwie nicht sauber gelaufen. Könntest Du mal ein "./gradlew clean" machen um die generierten java files zu löschen?

    Alternativ könnte es reichen das ChannelLogo.java (web/src/main/xtend-gen/vdr/jonglisto/web/ui/component/ChannelLogo.java) zu suchen und zu löschen.

    Die Libraries werden dabei nicht nochmal geladen. Es wird nur neu generiert und compiliert.


    Zabrimus

  • Ein "./gradlew clean" hat nichts gebracht....ich kann auch einfach die Channellogos einbinden, aber ich dachte es sollte auch ohne gehen.


    Also wie du möchtest; entweder wir beenden das hier und ich binde die Logos ein, oder wir testen noch was :)

    Server: Supermicro X9SAE, Intel Xeon E3-1245v2, ESXi 6.5

    VDR VM: Ubuntu 16.04 LTS, 2x DD Cine S2, VDR 2.3.8

  • Hi,


    die App muss ohne Channel-Logos funktionieren. Also den Anspruch habe ich schon.

    ich habe das gerade nochmal ganz frisch aus dem Git gezogen, gebaut und es funktioniert.


    Ich habe mal eine ganz blöde Frage:

    Die Git-Version erzeugt das Archiv jonglisto-ng-0.2.1-snapshot.war. Befindet sich im TomEE/webapps-Verzeichnis vielleicht noch die alte Version jonglisto-ng-0.2.0.war?

    Kopierst Du das war-File einfach nur nach webapps oder benennst du es um? Ich will nur ausschliessen, das beide Versionen der Applikation deployed sind, aber die URL immer auf die alte verweist.


    Todo für mich: Ich weiß noch nicht, wie ich beim Build an die Git-Version komme, aber ich muss dringend eine Version-Nummer anzeigen lassen.


    Zabrimus

  • Hi,


    ich hatte gerade auch so ein Problem. Neues build erstellt, war-File kopiert (nach ROOT.war) aber die Änderungen nicht gesehen. Das hot-deployment soll aber funktionieren und ist auch standardmäßig eingeschaltet. Es könnte aber Probleme geben, wenn ein älteres war schon einmal extrahiert wurde: Datei jonglisto-ng.war wird extrahiert in jonglisto-ng.


    Also könntest du im webapps Verzeichnis mal alle Spuren der Applikation löschen (besonders die Verzeichnisse) und das war-File neu kopieren?


    Zabrimus

  • Genau das hat das Problem gelöst.


    Habe es immer nach ..../ROOT.war kopiert. Habe jetzt den ROOT Ordner in webapps gelöscht und schon geht es.


    Danke für den Support!


    Edit: Die Suche nach Sendungen funktioniert aber immer noch nicht. Es passiert einfach garnichts....

    Edit 2: Korrektur. Funktioniert jetzt doch. Warum auch immer gerade nicht.

    Server: Supermicro X9SAE, Intel Xeon E3-1245v2, ESXi 6.5

    VDR VM: Ubuntu 16.04 LTS, 2x DD Cine S2, VDR 2.3.8

    Dieser Beitrag wurde bereits 1 Mal editiert, zuletzt von Honker ()

  • Wunderbar. Damit gibt es ein Problem weniger. Ich überlege schon, einen neuen Task einzuführen, der nach dem Build automatisch deployed.

    Aber das wäre dann eine Frage der Rechte. Hat der Build-Prozess überhaupt Schreibrechte?


    Die Gelegenheit habe ich aber jetzt genutzt um alle Änderung im Master-Branch zusammenzuführen und eine neue Version zu erzeugen. Unter anderem enthält der den Bugfix mit den Channel-Logos und einem im SVDRP Server, der bei mir aber erst nach 5 Tagen Dauerbetrieb zum Tragen kam. Solange das Plugin nicht eingesetzt wird, wäre der Fehler nie aufgefallen. Dies gilt auch für die Scraper-Informationen (extended EPG und Bilder).


    Das Changelog und danach weitere Erläuterungen

    Den ursprünglichen Logging-Unterbau (Standard JUL-Logger) habe ich über Board geworfen, weil mir die Konfiguration gerade im Zusammenhang mit TomEE zu umständlich und zu unflexibel war. Ein neuer Logger wird verwendet und damit auch gleich die Möglichkeit geschaffen, den Logger zur Laufzeit zu verändern: Welcher Log-Level soll verwendet werden und wohin soll geloggt werden. (Konfiguration -> Logging)

    Zur Verfügung stehen: STDOUT (als Standard), FILE (logfiles) und SYSLOG.


    STDOUT: Funktioniert immer und gibt alle Logmeldungen nach stdout aus. TomEE selber schreibt das stdout dann in das Logfile catalina.out.

    FILE: Es kann ein Verzeichnis angegeben werden, in dem die rollierenden Logfiles geschrieben werden sollen. Dazu muss die Applikation natürlich Schreibrechte auf das Verzeichnis haben, aber hoffentlich wird das ausreichend geprüft.

    SYSLOG: Das sollte bekannt sein. Die Facility habe ich dabei nicht eingeschränkt und damit können auch völlig sinnfreie (für die Applikation und für das eigentliche System) verwendet werden: KERN, USER, MAIL, DAEMON, AUTH, SYSLOG, LPR, NEWS, UUCP, CRON, AUTHPRIV, FTP, NTP, AUDIT, ALERT, CLOCK, LOCAL0, LOCAL1, LOCAL2, LOCAL3, LOCAL4, LOCAL5, LOCAL6, LOCAL7. Aber das liegt in der Verantwortung des Nutzers.

    Damit SYSLOG funktioniert muss der syslog Netzwerkverbindungen akzeptieren (bei mir in /etc/rsyslog.conf):

    Code
    1. # provides UDP syslog reception
    2. module(load="imudp")
    3. input(type="imudp" port="514")
    4. # provides TCP syslog reception
    5. module(load="imtcp")
    6. input(type="imtcp" port="514")

    Andere Appender scheinen mir eher unnötig zu sein: Einen eigenen Log-Server (mit oder ohne SSL) werde ich nicht schreiben, in einer Datenbank brauche die Messages auch nicht, mit dem SMTPAppender haben wir mal den Produktions-SMTP Server lahmgelegt (zum Glück habe ich die Konfiguration nicht gemacht:whistling:), also bin ich da auch eher vorsichtig.

    Die Log-Konfiguration wird dabei gespeichert und sollte den Server-Neustart überleben.
     

    Und dann noch das Upgrade zu Vaadin 8.3.2 mit ein paar Bugfixes in Komponenten, die ich verwende.


    Zabrimus

  • Was muss man eigentlich machen, damit man Zugriff auf epgd bekomme?


    Ein

    Code
    1. <!-- optional configuration of the epg2vdr database, used for e.g. search timers -->
    2. <epg2vdr host="127.0.0.1" port="3306" username="epg2vdr" password="epg" />

    scheint da irgendwie nicht zu reichen.


    epgsearch hat OOTB funktioniert.

    Server: Supermicro X9SAE, Intel Xeon E3-1245v2, ESXi 6.5

    VDR VM: Ubuntu 16.04 LTS, 2x DD Cine S2, VDR 2.3.8

  • Es fehlt ein Wert:

    Code
    1. <epg2vdr host="localhost" port="3306" username="epg2vdr" password="epg" database="epg2vdr" />

    Die Datenbank (genauer das Schema) fehlt bei dir. Es müssen alle Werte vorhanden sein, ansonsten kann die Verbindung nicht hergestellt werden.


    Zabrimus

  • Dann müsstest du aber mal die Doku auf GitHub und das Beispiel Config-File anpassen. Das steht so nämlich nirgends...

    Server: Supermicro X9SAE, Intel Xeon E3-1245v2, ESXi 6.5

    VDR VM: Ubuntu 16.04 LTS, 2x DD Cine S2, VDR 2.3.8

  • Hallo,


    die neue Version 0.2.3 ist da. Das Changelog:

    Es wurde ein paar Sachen geändert, die mich gestört haben oder die sich einfach als unpraktisch erwiesen haben.

    Im Wesentlichen:

    • In den EPG-Suchtimer Einstellungen wurde die Wiederholungsvermeidung auf den ersten Tab verschoben. Das brauche eigentlich fast immer.
    • Die EPG-Suche wurde erweitert um reguläre Ausdrücke, die konfiguriert werden können. Initial werden die Suchen nach 'Neue Serie' (Staffel 1, Folge1) und 'Neue Staffel' (Folge 1) angelegt.
    • In der EPG-Übersicht können direkt Suchtimer (epgd und epgsearch) angelegt werden
    • Die Timer-Timeline wird jetzt als SVG gerendert. Damit sollten die Timeline robuster gegenüber dem Zoom-Level des Browsers sein.
    • Optional kann die Zeitzone konfiguriert werden, die verwendet werden soll. Im Alpine-Docker Container musste ich dazu zuviel einstellen, damit die Zeitzone des Systems stimmt.
    • Und eine weitere wesentliche Änderung ist die Aufnahmenverwaltung. Die alte Version hat sich als viel zu unpraktisch rausgestellt. Jetzt ist das Ganze mehr Explorer-like. Links die Verzeichnisstruktur, rechts die Aufnahmen/Unterverzeichnisse. Mit Drag'n'drop lassen sich Verzeichnisse und Aufnahmen schnell verschieben. Doppelklick auf den Namen und die Aufnahme oder das Verzeichnis kann umbenannt werden. Löschen von Aufnahmen/Verzeichnissen sind natürlich auch möglich.


    Das wars auch schon. Falls Wünsche, Fehler, Anregungen vorhanden sind, immer her damit.


    Zabrimus

  • Beitrag von Frodo ()

    Dieser Beitrag wurde vom Autor gelöscht ().