Seite 3 von 4

Re: MySQL-Persistence speichert nichts

Verfasst: 4. Mai 2018 08:40
von madmike
Hallo Udo1toni,
danke für Deinen Tipp in der Paper UI ist rrd4j eingestellt. Ich habe die Runtime.cfg entsprechend geändert, leider auch keine Änderung. Selbst Dein Vorschlag in der Sitemap den Service einzutragen hat nicht geholfen. Irgendwie ist der Wurm drin !!!
Dennoch erstmal danke für die Unterstützung. Wenn Du Ideen hast dann immer her damit, ich habe auch viel gelesen aber irgendwie sind das alles andere Fehler. Zwei Dinge wundern mich zum einen finde ich keine Datei in der die Daten gespeichert werden, zum anderen schreiben viele das es angeblich um Rechteverwaltung geht. Hast du eine Idee dazu ? Vor allen was ich überhaupt nicht verstehe das es einwandfrei läuft und nun nicht mehr?
Ich habe immer wieder geschaut, die Temperaturdaten werden von Yahoo geliefert und angezeigt, halt nur nicht persistiert alles sehr merkwürdig!!
mfg
Micha

Re: MySQL-Persistence speichert nichts

Verfasst: 4. Mai 2018 15:50
von udo1toni
Ne, wenn die default persistence korrekt eingestellt ist, kann es daran ja schon mal nicht liegen.
Bist Du sicher, dass die Daten geschrieben werden? Die .rrd Dateien sollten unter %USERDATA%/persistence/rrd4j/ liegen (also z.B. /var/lib/openhab2/persistence/rrd4j/Temperature.rrd). Schau dort mal auf das Dateiänderungsdatum, das sollte immer maximal eine Minute in der Vergangenheit liegen.

Versuchsweise kannst Du auch die Temperature.rrd Datei löschen (oder umbenennen), dann müsste openHAB umgehend eine neue Temperature.rrd anlegen.

Re: MySQL-Persistence speichert nichts

Verfasst: 5. Mai 2018 22:29
von Mr. BJ
Ich wollte nur Bescheid geben das dieses Problem gelöst ist. Ich musste wieder erneut alles neu aufsetzen nach dem ich das Amazon Dash Binding nstalliert hatte. Aber mit den neuen Erkenntnissen funktionierte das Persistence auf Anhieb. Danke.

Re: MySQL-Persistence speichert nichts

Verfasst: 8. Mai 2018 22:14
von madmike
Hallo Udo2toni,

diese Datei "Temperature.rrd" war da, ich habe sie gelöscht, sie wird aber nicht neu geschrieben.
Eigentlich müsste sie nach dem Neustart neu erzeugt werden, aber narda !!
Ich bin echt ratlos !!
mfg
Micha

Re: MySQL-Persistence speichert nichts

Verfasst: 9. Mai 2018 04:26
von udo1toni
Es gibt einige Möglichkeiten, woran das liegen kann.
  1. fehlende Schreibrechte für den openhab-User im Persistence-Verzeichnis
  2. Ein Fehler in der rrd4j.persist Datei.
  3. rrd4j ist nicht (mehr) installiert.
Gibt es im Log irgendwelche Auffälligkeiten?
Um saubere Verhältnisse zu haben, kannst Du openHAB stoppen, anschließend benennst Du events.log und openhab.log um und startest openHAB neu. openHAB legt beide Dateien automatisch wieder an. Wenn die Startphase durch ist, schaust Du Dir openhab.log an und suchst speziell nach rrd4j.persist. Die Datei muss irgendwann geladen werden, falls dabei ein Fehler erkannt wird, wird das im Log in der Nähe stehen.
Ob der Dienst (aus welchem Grund auch immer) deinstalliert wurde, kannst Du am schnellsten in Paper UI sehen - oder Du gehst auf die openHAB-Console und schaust, was bundle:list | grep rrd4j ausspuckt.
Fehlende Schreibrechte kannst Du anhand der Ausgabe von ls -l /var/lib/openhab2/persist* feststellen. Die Flags müssen mindestens drwxr-xr-x sein, der Besitzer sollte normalerweise openhab heißen.

Re: MySQL-Persistence speichert nichts

Verfasst: 10. Mai 2018 22:32
von madmike
Hallo Udo1toni,
ich habe deine Anweisungen befolgt:
zuerstmal die erste, Stop des Openhab, dann umbenennen der Log files und Neustart.
diese Fehlermeldung kam:

Code: Alles auswählen

2018-05-10 22:19:52.790 [hingStatusInfoChangedEvent] - 'yahooweather:weather:essen' changed from UNINITIALIZED to INITIALIZING

==> /var/log/openhab2/openhab.log <==

2018-05-10 22:19:52.956 [ERROR] [org.openhab.core.compat1x           ] - [org.openhab.core.compat1x.persistenceservicefactory(189)] Error during instantiation of the implementation object

java.lang.LinkageError: Error reading class bytes: org.eclipse.smarthome.core.persistence.PersistenceService

	at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findClassImpl(ClasspathManager.java:570) ~[?:?]

	at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findLocalClassImpl(ClasspathManager.java:538) ~[?:?]

	at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findLocalClass(ClasspathManager.java:525) ~[?:?]

	at org.eclipse.osgi.internal.loader.ModuleClassLoader.findLocalClass(ModuleClassLoader.java:325) ~[?:?]

	at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:345) ~[?:?]

	at org.eclipse.osgi.internal.loader.sources.SingleSourcePackage.loadClass(SingleSourcePackage.java:36) ~[?:?]

	at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:407) ~[?:?]

	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:372) ~[?:?]

	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:364) ~[?:?]

	at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:161) ~[?:?]

	at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[?:?]

	at java.lang.Class.getDeclaredConstructors0(Native Method) ~[?:?]

	at java.lang.Class.privateGetDeclaredConstructors(Class.java:2671) ~[?:?]

	at java.lang.Class.getConstructor0(Class.java:3075) ~[?:?]

	at java.lang.Class.newInstance(Class.java:412) ~[?:?]

	at org.apache.felix.scr.impl.manager.SingleComponentManager.createImplementationObject(SingleComponentManager.java:237) [42:org.apache.felix.scr:2.0.12]

	at org.apache.felix.scr.impl.manager.SingleComponentManager.createComponent(SingleComponentManager.java:109) [42:org.apache.felix.scr:2.0.12]

	at org.apache.felix.scr.impl.manager.SingleComponentManager.getService(SingleComponentManager.java:906) [42:org.apache.felix.scr:2.0.12]

	at org.apache.felix.scr.impl.manager.SingleComponentManager.getServiceInternal(SingleComponentManager.java:879) [42:org.apache.felix.scr:2.0.12]

	at org.apache.felix.scr.impl.manager.AbstractComponentManager.activateInternal(AbstractComponentManager.java:749) [42:org.apache.felix.scr:2.0.12]

	at org.apache.felix.scr.impl.manager.AbstractComponentManager.enableInternal(AbstractComponentManager.java:675) [42:org.apache.felix.scr:2.0.12]

	at org.apache.felix.scr.impl.manager.AbstractComponentManager.enable(AbstractComponentManager.java:430) [42:org.apache.felix.scr:2.0.12]

	at org.apache.felix.scr.impl.manager.ConfigurableComponentHolder.enableComponents(ConfigurableComponentHolder.java:657) [42:org.apache.felix.scr:2.0.12]

	at org.apache.felix.scr.impl.BundleComponentActivator.initialEnable(BundleComponentActivator.java:341) [42:org.apache.felix.scr:2.0.12]

	at org.apache.felix.scr.impl.Activator.loadComponents(Activator.java:390) [42:org.apache.felix.scr:2.0.12]

	at org.apache.felix.scr.impl.Activator.access$200(Activator.java:54) [42:org.apache.felix.scr:2.0.12]

	at org.apache.felix.scr.impl.Activator$ScrExtension.start(Activator.java:265) [42:org.apache.felix.scr:2.0.12]

	at org.apache.felix.utils.extender.AbstractExtender.createExtension(AbstractExtender.java:254) [42:org.apache.felix.scr:2.0.12]

	at org.apache.felix.utils.extender.AbstractExtender.modifiedBundle(AbstractExtender.java:227) [42:org.apache.felix.scr:2.0.12]

	at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:482) [?:?]

	at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:415) [?:?]

	at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:232) [?:?]

	at org.osgi.util.tracker.BundleTracker$Tracked.bundleChanged(BundleTracker.java:444) [?:?]

	at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:903) [?:?]

	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) [?:?]

	at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148) [?:?]

	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEventPrivileged(EquinoxEventPublisher.java:213) [?:?]

	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:120) [?:?]

	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:112) [?:?]

	at org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor.publishModuleEvent(EquinoxContainerAdaptor.java:156) [?:?]

	at org.eclipse.osgi.container.Module.publishEvent(Module.java:476) [?:?]

	at org.eclipse.osgi.container.Module.start(Module.java:467) [?:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1620) [?:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1600) [?:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1571) [?:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1514) [?:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1) [?:?]

	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) [?:?]

	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340) [?:?]

Caused by: java.util.zip.ZipException: invalid LOC header (bad signature)

	at java.util.zip.ZipFile.read(Native Method) ~[?:?]

	at java.util.zip.ZipFile.access$1400(ZipFile.java:60) ~[?:?]

	at java.util.zip.ZipFile$ZipFileInputStream.read(ZipFile.java:734) ~[?:?]

	at java.util.zip.ZipFile$ZipFileInflaterInputStream.fill(ZipFile.java:434) ~[?:?]

	at java.util.zip.InflaterInputStream.read(InflaterInputStream.java:158) ~[?:?]

	at org.eclipse.osgi.storage.bundlefile.ZipBundleEntry$ZipBundleEntryInputStream.read(ZipBundleEntry.java:156) ~[?:?]

	at org.eclipse.osgi.storage.StorageUtil.getBytes(StorageUtil.java:196) ~[?:?]

	at org.eclipse.osgi.storage.bundlefile.BundleEntry.getBytes(BundleEntry.java:94) ~[?:?]

	at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findClassImpl(ClasspathManager.java:566) ~[?:?]
Hier sind zwei Sachen zum einen in der Zeile 4&5 und weiter unten "invalid LOC Header"

Re: MySQL-Persistence speichert nichts

Verfasst: 10. Mai 2018 22:41
von madmike
Zu deiner zweiten Anweisung auf die Konsole und die Bindings Listen erhielt ich folgende Antwort:

Code: Alles auswählen

222 │ Active   │  80 │ 1.11.0                 │ openHAB RRD4j Persistence Bundle
Somit gehe ich davon aus das der Dienst da ist und läuft, Paper UI zeigt mir auch installiert an.

Re: MySQL-Persistence speichert nichts

Verfasst: 10. Mai 2018 22:51
von madmike
Bei deinem letzten Befehl bekomme ich folgende Antwort:

Code: Alles auswählen

drwxrwxr-x+ 2 openhab openhabian 4096 Feb 25 20:26 db4o
drwxrwxr-x+ 2 openhab openhabian 4096 Feb 25 20:26 mapdb
drwxrwxr-x+ 2 openhab openhabian 4096 Mai  4 08:30 rrd4j
hier muss ich sagen bin ich auch mit meinem Latein am Ende !!

Was bedeuten das für mein System ??
mfg
und Danke für Deine Hilfe im Voraus
Micha

Re: MySQL-Persistence speichert nichts

Verfasst: 11. Mai 2018 05:25
von udo1toni
Die Fehlermeldung bezieht sich auf das Compability Layer. Da scheint während der Installation etwas schief gegangen zu sein.
Was Du probieren kannst, ist, das entsprechende Bundle zu deinstallieren und anschließend neu zu installieren (geht beides über die Karaf Konsole). Kann aber sein, dass das nicht funktioniert, dann wäre mein Tipp, die Konfiguration zu sichern und openHAB neu zu installieren.

Re: MySQL-Persistence speichert nichts

Verfasst: 11. Jun 2018 22:40
von webguards
Ich habe mir auch die Nächte um die Ohren gehauen, da ich Wordpress mit mariaDB auf meinen Server am Laufen habe. Alles probiert, dann aufgegeben. Dann habe influxdb installiert, alles funktionierte sofort, Charts mit monatelange Speicherung. Bei so einfach, lass ich die Finger von SQL