... hallo Leute!
1.) Habt ihr die fhem.cfg aufgeteilt, in Räume oder ähnliches?
(und diese cfg dann mittels include eingebunden)
oder verwendet ihr eine "große" fhem.cfg?
Bei vielen Geräten bzw. Diensten wird die schon ganz unübersichtlich.
2.) Außerdem frage ich mich, ob ihr die Konfigurationen rein über das Web / Edit Files durchführt, oder
ob ihr mittels Editor arbeitet als Notepad++ oder Text Wrangler.
3.) Des weiteren wäre für mich noch interessant, wie die korrekten Log Einstellungen sind.
Ich hab momentan das Problem, dass im Logfile nur wenig Einträge sind.
Es taucht immer ein Fehler auf, den ich nicht so ganz verstehe:
2014.11.01 08:55:32 1: PERL WARNING: Subroutine myUtils_Initialize redefined at ./FHEM/99_MyUtils.pm line 7.
2014.11.01 08:55:32 1: Including fhem.cfg
2014.11.01 09:36:42 1: Including fhem.cfg
2014.11.01 10:38:43 1: PERL WARNING: Subroutine myUtils_Initialize redefined at ./FHEM/99_MyUtils.pm line 7.
2014.11.01 10:38:43 1: Including fhem.cfg
in der 99_MyUtils steht:
package main;
use strict;
use warnings;
use POSIX;
sub
myUtils_Initialize($$)
{
my ($hash) = @_;
}
1;
Ich hab früher mit Temp.Listen gearbeitet bin aber jetzt auf die templist.cfg Variante umgestiegen.
Soll ich die MyUtils dann löschen, bzw. wird die dann nicht mehr benötigt.
4.) Außerdem frage ich mich noch, falls ich den Rasperry (auf dem hem läuft) neu aufsetze, wie ich das FHEM am Besten wieder in Betrieb nehme.
Wenn ich ein Backup einspiele, habe ich ja wieder den gleichen Stand wie vorher.
Ist es auch möglich, mir die Logs, configs herunterzuladen und danach fhem "frisch" zu installieren und dann die cfg eventuell aufzuteilen und die "vorhandenen" Einträge der "alten" cfg einfach einzukassieren?
Oder "müssen" die Geräte dann zwingend neu angelernt werden.
Vielen Dank!
Zu meiner Hardware: Raspberry, fhem (neueste Version) - (Homematic) TC mit 3 VD's und 2x Fenstersensoren sowie 3x DN, Außenthermometer, 1x Steckdose Leistungsmessung, HMLAN, Dreambox Anbindung, SmartTV
Zitat von: frankygth am 01 November 2014, 11:14:04
Habt ihr die fhem.cfg aufgeteilt, in Räume oder ähnliches?
(und diese cfg dann mittels include eingebunden)
oder verwendet ihr eine "große" fhem.cfg?
Bei mir gibt es schon lange überhaupt keine fhem.cfg mehr. Das ist sowas von überflüssig, fehleranfällig und unübersichtlich, das muss man sich eigentlich niemals antun. Und ich habe die fhem.cfg bis heute noch nicht ein einziges Mal vermißt, weil es bisher keinen einzigen Fall gab, in dem ich irgendwas hätte direkt in den Konfigurationsdaten bearbeiten müssen. Die Bearbeitung ausschließlich über das Webfrontend von fhem ist der zuverlässigste und sicherste Weg, eine Konfiguration anzupassen.
Wir reden hier übrigens über eine produktiv arbeitende fhem Installation mit insgesamt ca. 1000 definierten devices.
Hallo,
zu 1:
Nein - wozu ???
Ich muss nicht in der Konfig lesen, das soll schön brav FHEM machen von daher ist es mir egal wie die Konfig aussieht.
Das darf aber natürlich jeder gerne so machen wie er/sie es für richtig hält.
zu 2:
FHEM editieren ich ausschlieslich per Befehlszeile oder das jeweilige DEF.
Codes schreibe ich in Notepad++ und übertrage diese dann in FHEM - per Befehlszeile und bearbeiten des DEF.
zu 3:
FHEM ist case-sensitiv myUtils ist was anderes als MyUtils - man beachte das m/M
zu 4:
Es genügt die fhem.cfg sowie alle selbst erstellten Dateien (gplot, 99_irgendwas.pm) zu sichern und dann wieder auf die Neuinstallation zu kopieren.
VOR jeder Änderung sichere ich mir den Ordner /opt/fhem auf mein NAS.
Sollte irgendwas schief laufen habe ich nach ~2 Minuten wieder den alten Stand.
Neu anlernen musst du nur wenn du die FHTID/HMID des IODev änderst - was ich aber nicht empfehlen würde.
Grüße
Edith:
Nachtrag zu 3: Ich bin eigentlich froh sowenig wie möglich im FHEM-Logfile zu lesen.
Zitat von: frankygth am 01 November 2014, 11:14:04
Es taucht immer ein Fehler auf, den ich nicht so ganz verstehe:
2014.11.01 08:55:32 1: PERL WARNING: Subroutine myUtils_Initialize redefined at ./FHEM/99_MyUtils.pm line 7.
Das ist überhaupt
kein Fehler, sondern ein Hinweis, wenn die 99_myUtils.pm neu geladen wurde (was nach einer Änderung automatisch passiert). Die Meldung kommt auch nach einem "reload <beliebigesBereitsGeladenesModul>"
wow, ihr seit aber flott :)
@betateilchen
Verstehe ich dich richtig, dass du dass dann nie per edit files machst, sondern nur per WebIF den Anlernbefehl abfeuerst und dann direkt auf das DEF klickst und alle weiteren Befehle so formulierst bzw. rein über die Web Befehlszeile.
Ich bin mir nur nicht sicher, ob ich bei Neuinstallation (ist notwendig) die Geräte neu anlernen soll oder von der cfg umkopieren. Die Peerings (TC ->VD) bleiben ja, denke ich vorhanden
@Puschel74
Danke für die ausführliche Erklärung, auch die Groß/Kleinschreibung hab ich gänzlich übersehen.
Auch der Hinweis mit dem Kopieren aufs NAS ist sehr gut durchdacht, da ja immer wieder SD-Karten Problem machen, werde ich die Art von Backup einbinden.
Die Neuinstallation werde ich, denke ich auch durchführen....
Zitat von: frankygth am 01 November 2014, 11:55:15
@betateilchen
Verstehe ich dich richtig, dass du dass dann nie per edit files machst, sondern nur per WebIF den Anlernbefehl abfeuerst und dann direkt auf das DEF klickst und alle weiteren Befehle so formulierst bzw. rein über die Web Befehlszeile.
Ich arbeite schon per "Edit Files" - aber nur da, wo es auch Sinn macht. Also bei 99_myUtils.pm, RSS Layouts, holiday-Dateien und ähnlichem. Bei speziellen Anforderungen auch mal in gplot-Dateien.
Aber niemals in den Konfigurationsdaten von fhem selbst. Denn die Konfigurationsdaen stehen bei mir nicht mehr in einer editierbaren Textdatei, sondern versioniert in einer sql-Datenbank. Versioniert bedeutet: bei jedem "save config" wird die komplette Konfiguration zusätzlich in die Datenbank geschrieben, ich kann also problemlos eine Konfiguration von "vorgestern" wiederherstellen.
...bei der Größe deiner Installation macht das sicher Sinn ;)
Ich hab ja nur ca. 11 Geräte die ich steuern möchte, will aber auch einige Dinge wie Eco Modus, Anwesenheitserkennung bzw. Pushover Benachrichtigungen sowie Dreambox / SmartTV / Squeezebox Anbindung realisieren.
Wenn man mal angefangen hat, sind die Erweiterungsmöglichkeiten ja immer da...
Lichter, bzw. noch mehr schaltbare Steckdosen folgen sicher auch. Wobei ich ja dzt. nur auf Homematic setze...und nur den HMLAN Adapter im Einsatz habe. Baumarkt Steckdosen wären billiger, aber da brauch ich ja noch CUL..
Das ist für mich keine Frage der Installationsgröße. Bei mir laufen auch sämtliche "kleinen" fhem-Installationen mit 3-5 devices ausschließlich mit der Konfigurationsdatenbank.
Es geht ja um das Grundsatzthema, dass es für mich keinen nachvollziehbaren Grund gibt, warum man sich darum kümmern sollte, wie es in der Konfigurationsdatei "aussieht" geschweige denn in diesen Dateien irgendwas von Hand manipulieren müsste. Man kann ALLES über das fhem Frontend selbst tun. Und das ist gut so.
Hallo,
Zitat von: betateilchen am 01 November 2014, 12:17:23
Es geht ja um das Grundsatzthema, dass es für mich keinen nachvollziehbaren Grund gibt, warum man sich darum kümmern sollte, wie es in der Konfigurationsdatei "aussieht" geschweige denn in diesen Dateien irgendwas von Hand manipulieren müsste. Man kann ALLES über das fhem Frontend selbst tun. Und das ist gut so.
Schön zu wissen das ich nicht der einzige bin der so denkt ;D
Grüße
und wo liegt bei dir die Datenbank? Ist das auf einem NAS ausgelagert? Bzw. wäre doch eventuell denkbar die DB auf ein NAS auszulagern wobei es aus Energiespargründen wohl besser wäre, einen 2ten Raspberry dazu zu verwenden.
Ich hab ein NAS, welches ich aber zeitgesteuert nachts ausschalte - fraglich wie sich die Installation verhält, wenn die DB nur am Tag verfügbar ist?
2ten Raspberry hätte ich auch, läuft allerdings mein XBMC drauf....
Was verwendest du, bei der großen Installation, eigentlich für Hardware. Da wird der Raspberry ja eher nicht mehr ausreichen.... ;D
Also ich vermisse die FHEM.konfig, fhem.konfiguration .... ne wie heisst die noch? ;) fhem.cfg auch nicht mehr wirklich.
Alles schön in der DB und dann per Web die Definitionen usw anpassen.
Zitat von: frankygth am 01 November 2014, 12:36:33
und wo liegt bei dir die Datenbank?
Die liegt genau da, wo sich auch mein fhem selbst befindet - also auf dem gleichen Rechner. Die Konfigurationsdatenbank wird per cronjob zweimal pro Tag automatisch auf ein anderes Medium gesichert.
Zitat von: frankygth am 01 November 2014, 12:36:33
Was verwendest du, bei der großen Installation, eigentlich für Hardware. Da wird der Raspberry ja eher nicht mehr ausreichen.... ;D
Ich verwende als Produktivsystem einen Cubietruck. Aber der RaspberryPi wäre dafür auch nicht wirklich zu "klein", wenn man auf umfangreiche SVG und andere Webservices verzichten kann. Der Raspi hat einfach ein paar technische Restriktionen, weswegen ich ihn als Produktivsystem nicht mehr haben möchte, beispielsweise die USB ports und die fehlende Möglichkeit, eine echte Festplatte anzuschließen.
Grundsätzlich gilt: Es gibt enormes Optimierungspotenzial in fhem, wenn es darum geht, Perfomance zu verbessern. Geht zum Beispiel damit los, wirklich nur das zu loggen, was man auch wirklich verwendet, und nicht jeden Schrott, der von irgendeinem Device geliefert wird. Da bei mir auch in eine einzige Datenbank geloggt wird, müssen nicht unzählige FileLog-Dateien geöffnet und verwaltet werden, was sich durchaus auch auf die Perfomance auswirkt.
Ein RaspberryPi ist bei mir nur noch als Backup-System vorhanden, falls der Cubietruck wirklich einmal ausfallen sollte.
Zitat von: Puschel74 am 01 November 2014, 12:27:02
Schön zu wissen das ich nicht der einzige bin der so denkt
Wenn ich nicht so denken würde, hätte ich mir doch nicht den Streß angetan, die configDB überhaupt zu entwickeln...