Seite 1 von 3

CCU Historian lässt sich im Browser nicht mehr aufrufen

Verfasst: 12.03.2019, 11:16
von TheOtherHalf
Hallo!
Mein CCU Historian läuft auf einem RaspberryPi. Ich habe schon länger keine Trends mehr angesehen und habe das jetzt erst wieder versucht. Leider kann ich die Oberfläche im Browser nicht mehr öffnen, es kommt die Fehlermeldung, dass die Adresse nicht mehr gefunden wird. Frage ich den Dienst ab, so sehe ich, dass er läuft.

Code: Alles auswählen

pi@raspberrypi:~ $ sudo service ccu-historian status
● ccu-historian.service - LSB: starts ccu-historian
   Loaded: loaded (/etc/init.d/ccu-historian; generated; vendor preset: enabled)
   Active: active (running) since Tue 2019-03-12 10:37:17 CET; 37min ago
     Docs: man:systemd-sysv-generator(8)
  Process: 431 ExecStart=/etc/init.d/ccu-historian start (code=exited, status=0/
   CGroup: /system.slice/ccu-historian.service
           └─461 /usr/bin/java -jar /opt/ccu-historian/ccu-historian.jar -config

Mär 12 10:37:17 raspberrypi systemd[1]: Starting LSB: starts ccu-historian...
Mär 12 10:37:17 raspberrypi ccu-historian[431]: Starting ccu-historian
Mär 12 10:37:17 raspberrypi systemd[1]: Started LSB: starts ccu-historian.
Könnt ihr mir weiterhelfen?

Re: CCU Historian lässt sich im Browser nicht mehr aufrufen

Verfasst: 16.03.2019, 11:57
von Mathias
Ich der Port des CCU-Historians (Konfigurationsoption webServer.port) auch in der Firewall frei gegeben? Z.B. in aktuellen RaspberryMatic-Versionen muss dieser explizit frei gegeben werden (s.a. Handbuch).

Gruß
Mathias

Re: CCU Historian lässt sich im Browser nicht mehr aufrufen

Verfasst: 22.07.2019, 13:36
von TheOtherHalf
Mathias hat geschrieben:
16.03.2019, 11:57
Ich der Port des CCU-Historians (Konfigurationsoption webServer.port) auch in der Firewall frei gegeben? Z.B. in aktuellen RaspberryMatic-Versionen muss dieser explizit frei gegeben werden (s.a. Handbuch).
Ich möchte nach etwas längerer Zeit nochmals hierauf zurück kommen.
Du meinst mit Firewall meine Fritzbox? An dieser habe ich nichts blockiert oder hinzugefügt. Es lief einige Monate ohne Probleme, aber nun komme ich nicht mehr drauf.
Adresse ist http://192.168.178.9:80

Re: CCU Historian lässt sich im Browser nicht mehr aufrufen

Verfasst: 22.07.2019, 13:41
von TheOtherHalf
Noch als Info: Meine CCU ist eine eigene CCU2, läuft also nicht mit auf dem Raspi.

Re: CCU Historian lässt sich im Browser nicht mehr aufrufen

Verfasst: 23.07.2019, 09:29
von TheOtherHalf
und der vollständigkeit halber noch meine Config Datei:

Code: Alles auswählen

// CCU-Historian Konfiguration
// 
// Hinweise:
// Kommentarzeilen starten mit zwei Schrägstrichen (//). Alle Zeichen nach den Schrägstrichen
// werden ignoriert. Zeichenketten als Optionswert müssen von einfachen Anführungszeichen (')
// umschlossen sein. Weitere Informationen sind auch im Abschnitt 3 des Handbuchs zu finden.
//
// Liste der zur Verfügung stehen Konfigurationsoptionen mit ihren jeweiligen Standardwerten:
//
// logSystem.consoleLevel=Level.INFO
// logSystem.fileLevel=Level.OFF
logSystem.fileName='/opt/ccu-historian/ccu-historian.log'
// logSystem.fileLimit=1000000
// logSystem.fileCount=5
// logSystem.binRpcLevel=Level.WARNING
database.dir='/opt/ccu-historian/data'
// database.name='history'
// database.user='sa'
// database.password='ccu-historian'
// database.backup=''
// database.webEnable=true
database.webPort=8082
database.webAllowOthers=true
// database.tcpEnable=false
// database.tcpPort=9092
// database.tcpAllowOthers=false
// database.pgEnable=false
// database.pgPort=5435
// database.pgAllowOthers=false
// webServer.port=80
webServer.dir='opt/ccu-historian/webapp'
// webServer.logLevel=Level.WARNING
webServer.historianAddress='192.168.178.9'
// webServer.trendDesigns ... (s.a. Abschnitt 7.4.1 im Handbuch)
// webServer.apiKeys=[]
// webServer.menuLinks ... (s.a. Abschnitt 4.4 im Handbuch)
// historian.metaCycle=3600000 // 1 Stunde
// historian.bufferCount=5000
// historian.bufferTime=0 
// devices.historianBinRpcPort=2099
// devices.historianXmlRpcPort=2098
devices.historianAddress='192.168.178.9' // eigene IP-Adresse automatisch ermitteln
// 
// Für jede Zentrale bzw. jedes Gerät müssen folgende zwei Optionen gesetzt werden
// (s.a. Abschnitt 3.2 im Handbuch):
// devices.device<Nr.>.type=<CCU1, CCU2 oder BINRPC> 
// devices.device<Nr.>.address='<IP-Adresse>'
//
// Optional können noch folgende Optionen gesetzt werden:
// devices.device<Nr.>.plugin<Nr.>.type=<CUXD oder HMWLGW>
// devices.device<Nr.>.sysVarDataCycle=30000
// devices.device<Nr.>.reinitTimeout=300000
// devices.device<Nr.>.writeAccess=false
// devices.device<Nr.>.watchdogProgram=''
// devices.device<Nr.>.watchdogCycle=300000 // 5 Minuten
// Bei Anbindung von mehreren Zentralen muss ein Präfix je Zantrale gesetzt werden!
// devices.device<Nr.>.prefix=''
//
// Es muss im Folgenden mindestens eine Zentrale bzw. Gerät konfiguriert werden:

// Typ der Zentrale: CCU1 oder CCU2
devices.device1.type=CCU2
// IP-Adresse der Zentrale
devices.device1.address='192.168.178.8'

// Falls CUxD verwendet wird, die Kommentarzeichen (//) vor folgender Zeile entfernen:
devices.device1.plugin1.type=CUXD

// Falls das HomeMatic Wired LAN Gateway verwendet wird, die Kommentarzeichen (//) vor 
// folgender Zeile entfernen:
// devices.device1.plugin1.type=HMWLGW

// Falls CUxD UND das HMWLGW verwendet wird, die Kommentarzeichen (//) vor folgenden
// zwei Zeilen entfernen:
// devices.device1.plugin1.type=CUXD
// devices.device1.plugin2.type=HMWLGW

// Zum Freischalten der Web-Links zu den Beispiel-Web-Seiten, die Kommentarzeichen (//) vor folgenden
// zwei Zeilen entfernen:
// webServer.menuLinks.link1.text='Beispiel 1 - Vorjahresvergleich'
// webServer.menuLinks.link1.address='/custom/example1.html'

devices.historianAddress='192.168.178.9'
webServer.historianAddress='192.168.178.9'

Re: CCU Historian lässt sich im Browser nicht mehr aufrufen

Verfasst: 23.07.2019, 21:53
von Slice
Hallo TheOtherHalf,

ich versuche mal weiter zu helfen und habe mir Deine Config angeschaut, bis auf das Du an 2 Stellen:

Code: Alles auswählen

devices.historianAddress='192.168.178.9'
webServer.historianAddress='192.168.178.9'
setzt, einmal weiter oben und zum Ende hin nochmal, fällt mir nichts auf.

Ich verweise nochmal auf den Post von Mathias:
Mathias hat geschrieben:
16.03.2019, 11:57
Ich der Port des CCU-Historians (Konfigurationsoption webServer.port) auch in der Firewall frei gegeben? Z.B. in aktuellen RaspberryMatic-Versionen muss dieser explizit frei gegeben werden (s.a. Handbuch).
In Bezug auf Deinen Post hier:
TheOtherHalf hat geschrieben:
22.07.2019, 13:36
Du meinst mit Firewall meine Fritzbox? An dieser habe ich nichts blockiert oder hinzugefügt. Es lief einige Monate ohne Probleme, aber nun komme ich nicht mehr drauf.
Adresse ist http://192.168.178.9:80
Er meint nicht die Firewall der Fritzbox, überprüfe mal die Firewall Deiner CCU2.
Ansonsten dürfte noch ein detailiertes Logfile vom CCU-Historian helfen (siehe Handbuch)..

Grüße,
Slice

Re: CCU Historian lässt sich im Browser nicht mehr aufrufen

Verfasst: 24.07.2019, 09:47
von TheOtherHalf
Die CCU Firewall ist wie im Anhang zu sehen konfiguriert. Wie schon gesagt, die CCU ist eine eigene Hardware.(ELV) CCU Historian läuft auf einem Raspberry Pi mit der Adresse 192.168.178.9. Die CCU hat die 192.168.178.8.

Log File:

Code: Alles auswählen

019-07-24 09:44:01|FINE   |Log system configuration:
2019-07-24 09:44:01|FINE   |logSystem.consoleLevel=Level.INFO
2019-07-24 09:44:01|FINE   |logSystem.fileLevel=Level.FINEST
2019-07-24 09:44:01|FINE   |logSystem.fileName='/opt/ccu-historian/ccu-historian.log'
2019-07-24 09:44:01|FINE   |logSystem.fileLimit=10000000
2019-07-24 09:44:01|FINE   |logSystem.fileCount=5
2019-07-24 09:44:01|FINE   |logSystem.binRpcLevel=Level.FINER
2019-07-24 09:44:01|INFO   |Starting base services
2019-07-24 09:44:01|INFO   |Connecting to database
2019-07-24 09:44:01|FINE   |database.dir='/opt/ccu-historian/data'
2019-07-24 09:44:01|FINE   |database.name='history'
2019-07-24 09:44:01|FINE   |database.user='sa'
2019-07-24 09:44:01|FINE   |database.webEnable=true
2019-07-24 09:44:01|FINE   |database.webPort=8082
2019-07-24 09:44:01|FINE   |database.webAllowOthers=true
2019-07-24 09:44:01|FINE   |database.tcpEnable=false
2019-07-24 09:44:01|FINE   |database.tcpPort=9092
2019-07-24 09:44:01|FINE   |database.tcpAllowOthers=false
2019-07-24 09:44:01|FINE   |database.pgEnable=false
2019-07-24 09:44:01|FINE   |database.pgPort=5435
2019-07-24 09:44:01|FINE   |database.pgAllowOthers=false
2019-07-24 09:44:01|FINE   |database.backup=''
2019-07-24 09:44:01|SEVERE |Exception: Datei fehlerhaft beim Lesen des Datensatzes: null. Mögliche Lösung: Recovery Werkzeug verwenden
File corrupted while reading record: null. Possible solution: use the recovery tool [90030-197]
2019-07-24 09:44:01|SEVERE |Detail: org.h2.jdbc.JdbcSQLException: Datei fehlerhaft beim Lesen des Datensatzes: null. Mögliche Lösung: Recovery Werkzeug verwenden
File corrupted while reading record: null. Possible solution: use the recovery tool [90030-197]
	at org.h2.message.DbException.getJdbcSQLException(DbException.java:357)
	at org.h2.message.DbException.get(DbException.java:168)
	at org.h2.mvstore.db.MVTableEngine$Store.convertIllegalStateException(MVTableEngine.java:196)
	at org.h2.mvstore.db.MVTableEngine$Store.open(MVTableEngine.java:168)
	at org.h2.mvstore.db.MVTableEngine.init(MVTableEngine.java:100)
	at org.h2.engine.Database.getPageStore(Database.java:2538)
	at org.h2.engine.Database.open(Database.java:709)
	at org.h2.engine.Database.openDatabase(Database.java:286)
	at org.h2.engine.Database.<init>(Database.java:280)
	at org.h2.engine.Engine.openSession(Engine.java:66)
	at org.h2.engine.Engine.openSession(Engine.java:179)
	at org.h2.engine.Engine.createSessionAndValidate(Engine.java:157)
	at org.h2.engine.Engine.createSession(Engine.java:140)
	at org.h2.engine.Engine.createSession(Engine.java:28)
	at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:351)
	at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:124)
	at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:103)
	at org.h2.Driver.connect(Driver.java:69)
	at mdz.ccuhistorian.Database.<init>(Database.groovy:71)
	at mdz.ccuhistorian.DatabaseSystem.<init>(DatabaseSystem.groovy:33)
	at mdz.ccuhistorian.HistorianSystem.<init>(HistorianSystem.groovy:34)
	at mdz.ccuhistorian.Main.start(Main.groovy:102)
	at mdz.ccuhistorian.Main.access$0(Main.groovy)
	at mdz.ccuhistorian.Main$_run_closure4.doCall(Main.groovy:79)
	at mdz.ccuhistorian.Main$_run_closure4.call(Main.groovy)
	at mdz.Exceptions.lambda$0(Exceptions.java:84)
	at mdz.Exceptions.catchToLog(Exceptions.java:74)
	at mdz.Exceptions.catchToLog(Exceptions.java:84)
	at mdz.ccuhistorian.Main.run(Main.groovy:79)
	at mdz.ccuhistorian.Main.main(Main.groovy:47)
Caused by: java.lang.IllegalStateException: File corrupted in chunk 581199, expected page length 4..512, got 491215 [1.4.197/6]
	at org.h2.mvstore.DataUtils.newIllegalStateException(DataUtils.java:870)
	at org.h2.mvstore.Page.read(Page.java:652)
	at org.h2.mvstore.Page.read(Page.java:186)
	at org.h2.mvstore.MVStore.readPage(MVStore.java:1936)
	at org.h2.mvstore.MVMap.readPage(MVMap.java:698)
	at org.h2.mvstore.Page.getChildPage(Page.java:208)
	at org.h2.mvstore.MVMap.binarySearch(MVMap.java:454)
	at org.h2.mvstore.MVMap.binarySearch(MVMap.java:455)
	at org.h2.mvstore.MVMap.binarySearch(MVMap.java:455)
	at org.h2.mvstore.MVMap.get(MVMap.java:436)
	at org.h2.mvstore.MVStore.getChunkIfFound(MVStore.java:924)
	at org.h2.mvstore.MVStore.getChunk(MVStore.java:901)
	at org.h2.mvstore.MVStore.readPage(MVStore.java:1927)
	at org.h2.mvstore.MVMap.readPage(MVMap.java:698)
	at org.h2.mvstore.Page.getChildPage(Page.java:208)
	at org.h2.mvstore.Cursor.fetchNext(Cursor.java:150)
	at org.h2.mvstore.Cursor.next(Cursor.java:50)
	at org.h2.mvstore.MVStore.loadChunkMeta(MVStore.java:684)
	at org.h2.mvstore.MVStore.readStoreHeader(MVStore.java:664)
	at org.h2.mvstore.MVStore.<init>(MVStore.java:361)
	at org.h2.mvstore.MVStore$Builder.open(MVStore.java:2934)
	at org.h2.mvstore.db.MVTableEngine$Store.open(MVTableEngine.java:155)
	... 26 more
2019-07-24 09:44:01|FINEST |Sleeping
2019-07-24 09:44:31|FINE   |Reading configuration file /opt/ccu-historian/ccu-historian.config
2019-07-24 09:44:31|FINE   |Log system configuration:
2019-07-24 09:44:31|FINE   |logSystem.consoleLevel=Level.INFO
2019-07-24 09:44:31|FINE   |logSystem.fileLevel=Level.FINEST
2019-07-24 09:44:31|FINE   |logSystem.fileName='/opt/ccu-historian/ccu-historian.log'
2019-07-24 09:44:31|FINE   |logSystem.fileLimit=10000000
2019-07-24 09:44:31|FINE   |logSystem.fileCount=5
2019-07-24 09:44:31|FINE   |logSystem.binRpcLevel=Level.FINER
2019-07-24 09:44:31|INFO   |Starting base services
2019-07-24 09:44:31|INFO   |Connecting to database
2019-07-24 09:44:31|FINE   |database.dir='/opt/ccu-historian/data'
2019-07-24 09:44:31|FINE   |database.name='history'
2019-07-24 09:44:31|FINE   |database.user='sa'
2019-07-24 09:44:31|FINE   |database.webEnable=true
2019-07-24 09:44:31|FINE   |database.webPort=8082
2019-07-24 09:44:31|FINE   |database.webAllowOthers=true
2019-07-24 09:44:31|FINE   |database.tcpEnable=false
2019-07-24 09:44:31|FINE   |database.tcpPort=9092
2019-07-24 09:44:31|FINE   |database.tcpAllowOthers=false
2019-07-24 09:44:31|FINE   |database.pgEnable=false
2019-07-24 09:44:31|FINE   |database.pgPort=5435
2019-07-24 09:44:31|FINE   |database.pgAllowOthers=false
2019-07-24 09:44:31|FINE   |database.backup=''
2019-07-24 09:44:31|SEVERE |Exception: Datei fehlerhaft beim Lesen des Datensatzes: null. Mögliche Lösung: Recovery Werkzeug verwenden
File corrupted while reading record: null. Possible solution: use the recovery tool [90030-197]
2019-07-24 09:44:31|SEVERE |Detail: org.h2.jdbc.JdbcSQLException: Datei fehlerhaft beim Lesen des Datensatzes: null. Mögliche Lösung: Recovery Werkzeug verwenden
File corrupted while reading record: null. Possible solution: use the recovery tool [90030-197]
	at org.h2.message.DbException.getJdbcSQLException(DbException.java:357)

Re: CCU Historian lässt sich im Browser nicht mehr aufrufen

Verfasst: 24.07.2019, 22:00
von Slice
Okay, als erstes fällt mir im Log auf:

Code: Alles auswählen

2019-07-24 09:44:01|SEVERE |Exception: Datei fehlerhaft beim Lesen des Datensatzes: null. Mögliche Lösung: Recovery Werkzeug verwenden
File corrupted while reading record: null. Possible solution: use the recovery tool [90030-197]
2019-07-24 09:44:01|SEVERE |Detail: org.h2.jdbc.JdbcSQLException: Datei fehlerhaft beim Lesen des Datensatzes: null. Mögliche Lösung: Recovery Werkzeug verwenden
File corrupted while reading record: null. Possible solution: use the recovery tool [90030-197]
Liest sich so als ob die Datenbank evtl nen Schuss hat und deswegen Historian auch nicht startet..
Mögliche Lösung: Recovery Werkzeug verwenden (siehe Handbuch)
Hast Du nen Backup das Du zurück spielen kannst?

Grüße,
Slice

Re: CCU Historian lässt sich im Browser nicht mehr aufrufen

Verfasst: 25.07.2019, 09:16
von TheOtherHalf
Leider habe ich kein Backup...Was aber auch nicht weiter schlimm ist, die Daten umfassen nur etwa 4 Monate, die Installation war recht frisch.

Im Handbuch fine ich leider nichts über dieses Recovery Tool. Auf welcher Seite sollte es beschrieben sein?

Re: CCU Historian lässt sich im Browser nicht mehr aufrufen

Verfasst: 02.08.2019, 08:09
von Mathias
Hier ist kurz (für Windows) beschrieben, wie es angewendet wird. Die Datenbanken können zwischen Rechnern und Betriebssystemen hin und her kopiert werden.

Gruß
Mathias