Hallo zusammen,
Ich habe das Gefühl dass beim Start von smarthome.py das autogenerate zum Erzeugen des smarthome.py Templates nicht läuft bzw. abstürzt. Wenn ich /var/www/smartvisu/pages/smarthome leere, wird beim Neustart von smarthome.py eine Datei für den ersten Raum in der smartvisu.conf angelegt, die Datei bleibt jedoch 0 Byte groß und weitere Räume werden nicht angelegt. Nachdem ich probehalber den ersten Raum mal aus der conf rausgenommen hatte, das gleiche Resultat beim zweiten Raum. Auf dem Raspberry lief diese smarthome.conf problemlos.-
smarthome.py 1.0 und smartVISU 2.8 sind beide frisch installiert (smartvisu.conf von älterer Installation übernommen).
/var/www/smartvisu/pages/smarthome steht auf chmod 777
smartvisu.conf ist 777
smarthome.py läuft als User smarthome, der auch in der Gruppe www-data ist. Zwischenzeitlich habe ich den probehalber als root laufen lassen, aber ohne erfolg. Ich denke also dass ich ein Berechtigungproblem ausschliessen kann.
smarthome.log zeigt beim Neustart von smarthome.py das Folgende:
Wesentlicher Unterschied zur Raspi-Installation ist der, dass hier der Apache statt des Nginx verwendet wird. Auf dem Raspberry konnte ich mittels top beobachten, dass nach dem Start von smarthome.py mehrere Sekunden lang das die Vorlage generiert wurde. Auf dem aktuellen System sehe ich nichts dergleichen, wobei ich nicht ausschliessen kann dass das einfach nur an der größeren Performance des Systems liegt.
Wie kann ich feststellen, ob autogenerate läuft, oder das mal manuell anstossen?
EDIT: hier noch der Output im Debug-Modus:
Wenn ich die .conf mit nano bearbeite, kann ich allerdings nichts finden, was den Fehler verursachen könnte. Ich hänge die Datei mal an.
Das Problem tritt mit allen Browsern auf. Hier noch die plugin.conf:
Hintergrund:
ich hatte hier einen Thread eröffnet, weil smartVISU mir beim Aufruf der smarthome.py Vorlage immer nur die config-seite angezeigt hatte - das dachte ich durch kopieren der alten Dateien aus dem Pages Verzeichnis behoben zu haben.
Ich habe das Gefühl dass beim Start von smarthome.py das autogenerate zum Erzeugen des smarthome.py Templates nicht läuft bzw. abstürzt. Wenn ich /var/www/smartvisu/pages/smarthome leere, wird beim Neustart von smarthome.py eine Datei für den ersten Raum in der smartvisu.conf angelegt, die Datei bleibt jedoch 0 Byte groß und weitere Räume werden nicht angelegt. Nachdem ich probehalber den ersten Raum mal aus der conf rausgenommen hatte, das gleiche Resultat beim zweiten Raum. Auf dem Raspberry lief diese smarthome.conf problemlos.-
smarthome.py 1.0 und smartVISU 2.8 sind beide frisch installiert (smartvisu.conf von älterer Installation übernommen).
/var/www/smartvisu/pages/smarthome steht auf chmod 777
smartvisu.conf ist 777
smarthome.py läuft als User smarthome, der auch in der Gruppe www-data ist. Zwischenzeitlich habe ich den probehalber als root laufen lassen, aber ohne erfolg. Ich denke also dass ich ein Berechtigungproblem ausschliessen kann.
smarthome.log zeigt beim Neustart von smarthome.py das Folgende:
Code:
2014-11-16 15:15:58,468 INFO Main Start SmartHome.py 1.0-35-gf62db45 -- smarthome.py:__init__:231 2014-11-16 15:15:58,471 INFO Main Init Scheduler -- scheduler.py:__init__:86 2014-11-16 15:15:58,472 INFO Main Init Plugins -- smarthome.py:start:274 2014-11-16 15:15:58,503 INFO Main Init Items -- smarthome.py:start:280 2014-11-16 15:15:58,552 INFO Main Item env.core.memory = 19468288.0 via SQLite None None -- item.py:set:457 2014-11-16 15:15:58,568 INFO Main Item env.core.threads = 7.0 via SQLite None None -- item.py:set:457 2014-11-16 15:15:58,569 INFO Main Item env.core.garbage = 0.0 via SQLite None None -- item.py:set:457 2014-11-16 15:15:58,575 INFO Main Item env.system.load = 0.01 via SQLite None None -- item.py:set:457 2014-11-16 15:15:58,742 INFO Main Start Plugins -- plugin.py:start:65 2014-11-16 15:15:58,757 INFO Main Start Logics -- logic.py:__init__:33 2014-11-16 15:15:58,759 WARNING Main dummy: Could not access logic file (/usr/local/smarthome/logics/dummy_series.py) => ignoring. -- logic.py:generate_bytecode:114 2014-11-16 15:15:58,759 WARNING Main hello: Could not access logic file (/usr/local/smarthome/logics/hello.py) => ignoring. -- logic.py:generate_bytecode:114 2014-11-16 15:15:59,778 INFO Main Item EG.WC.Klima.Heizung.soll = 18.0 via KNX 1.1.30 3/2/3 -- item.py:__update:363
Wie kann ich feststellen, ob autogenerate läuft, oder das mal manuell anstossen?
EDIT: hier noch der Output im Debug-Modus:
Code:
Exception in thread visu: Traceback (most recent call last): File "/usr/local/smarthome/plugins/visu/smartvisu.py", line 110, in pages f.write(r) UnicodeEncodeError: 'ascii' codec can't encode character '\xdf' in position 135: ordinal not in range(128) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3.2/threading.py", line 740, in _bootstrap_inner self.run() File "/usr/local/smarthome/lib/plugin.py", line 84, in run self.plugin.run() File "/usr/local/smarthome/plugins/visu/__init__.py", line 132, in run self._smartvisu_pages(self.smartvisu_dir) File "/usr/local/smarthome/plugins/visu/__init__.py", line 70, in _smartvisu_pages smartvisu.pages(self._sh, directory) File "/usr/local/smarthome/plugins/visu/smartvisu.py", line 112, in pages logger.warning("Could not write to {0}/{1}.html: {}".format(outdir, item.id(), e)) ValueError: cannot switch from manual field specification to automatic field numbering
Das Problem tritt mit allen Browsern auf. Hier noch die plugin.conf:
Code:
# plugin.conf [knx] class_name = KNX class_path = plugins.knx host = 127.0.0.1 port = 6720 # send_time = 600 # update date/time every 600 seconds, default none # time_ga = 1/1/1 # default none # date_ga = 1/1/2 # default none #[ow] # class_name = OneWire # class_path = plugins.onewire [visu] class_name = WebSocket class_path = plugins.visu smartvisu_dir = /var/www/smartvisu # for Ubuntu 14.04 upwards the base for html has changed # smartvisu_dir = /var/www/html/smartVISU [cli] class_name = CLI class_path = plugins.cli ip = 0.0.0.0 update = True [sql] class_name = SQL class_path = plugins.sqlite #RRDvon Raspi #[rrd] # class_name = RRD # class_path = plugins.rrd # step = 60
ich hatte hier einen Thread eröffnet, weil smartVISU mir beim Aufruf der smarthome.py Vorlage immer nur die config-seite angezeigt hatte - das dachte ich durch kopieren der alten Dateien aus dem Pages Verzeichnis behoben zu haben.
Kommentar