Speichern der fhem.cfg dauert lange

Begonnen von Michi240281, 09 Februar 2014, 17:56:26

Vorheriges Thema - Nächstes Thema

Michi240281

Hallo zusammen,

seit ner Weile dauert bei mir das Speichern der fhem.cfg etwa 20-30 Sekunden.

Kann jmd Vermutungen anstellen, woran das liegen könnte? Hier mal meine gesamte cfg:

attr global autoload_undefined_devices 1
attr global latitude 50.9833
attr global logfile ./log/fhem-%Y-%m.log
attr global longitude 6.0
attr global modpath .
attr global motd SecurityCheck:\
\
WEB,WEBS,WEBtablet has no basicAuth attribute.\
telnetPort has no password/globalpassword attribute.\
\
Restart fhem for a new check if the problem is fixed,\
or set the global attribute motd to none to supress this message.\

attr global sendStatistics never
attr global statefile ./log/fhem.save
attr global updateInBackground 1
attr global userattr devStateIcon devStateStyle fp_Erdgeschoss icon room_map sortby structexclude webCmd
attr global verbose 3
define Twilight Twilight 50.9833 6.0 1 651465
attr Twilight room Haus

#########################################################################
## Funktion......: FHEM Backup
## Besonderheiten: Autom. Backup
#########################################################################
define NTFY_BackupRun at *23:59:00 set SYS_Backup Ausführen
attr NTFY_BackupRun room System
#########################################################################

################
### INCLUDES ###
################

include Garage.cfg

#Zugang per Telnet
define telnetPort telnet 7072 global

#Zugang per Webinterface
define WEB FHEMWEB 8083 global
attr WEB hiddenroom DashboardRoom
attr WEB longpoll 1
attr WEB roomIcons System:edit_settings Garage:fts_garage Wohnzimmer:scene_livingroom Dashboard:control_all_on_off Schlafzimmer:scene_making_love Plots:time_graph CUL_HM:hm_lan Save config:edit_save Unsorted:secur_encoding
attr WEB stylesheetPrefix dark
define WEBS FHEMWEB 8084 global
attr WEBS hiddenroom DashboardRoom
attr WEBS longpoll 0
attr WEBS stylesheetPrefix darksmallscreen
#attr WEBS iconPath openautomation:fhemSVG
define WEBtablet FHEMWEB 8085 global
attr WEBtablet hiddenroom DashboardRoom
attr WEBtablet longpoll 0
attr WEBtablet stylesheetPrefix darktouchpad

define HMLAN1 HMLAN 192.168.188.222:1000
attr HMLAN1 hmId 23A6D7
attr HMLAN1 hmLanQlen 1_min
attr HMLAN1 respTime 5
attr HMLAN1 wdTimer 25

#DUMMY:
#define WZ.Weihnachtsbaum dummy
#attr WZ.Weihnachtsbaum room Wohnzimmer
#attr WZ.Weihnachtsbaum webCmd off:on


# Fake FileLog entry, to access the fhem log from FHEMWEB
define Logfile FileLog ./log/fhem-%Y-%m.log fakelog

define autocreate autocreate
attr autocreate filelog ./log/%NAME-%Y.log

define eventTypes eventTypes ./log/eventTypes.txt

################################
####### Enigma2 Modul ##########
################################

define DM500HD ENIGMA2 192.168.188.33 80 60 root ********
attr DM500HD bouquet-radio 1:7:2:0:0:0:0:0:0:0:FROM BOUQUET "userbouquet.favourites.radio" ORDER BY bouquet
attr DM500HD bouquet-tv 1:7:1:0:0:0:0:0:0:0:FROM BOUQUET "userbouquet.favourites.tv" ORDER BY bouquet
attr DM500HD devStateIcon on:rc_GREEN:off off:rc_YELLOW:on absent:rc_STOP:on
attr DM500HD group Multimedia
attr DM500HD http-method POST
attr DM500HD icon dreambox
attr DM500HD model dm500hd
attr DM500HD room Wohnzimmer
attr DM500HD webCmd channel:input

define Spark_One ENIGMA2 192.168.188.11 80 60 root ********
attr Spark_One bouquet-radio 1:7:2:0:0:0:0:0:0:0:FROM BOUQUET "userbouquet.favourites.radio" ORDER BY bouquet
attr Spark_One bouquet-tv 1:7:1:0:0:0:0:0:0:0:FROM BOUQUET "userbouquet.favourites.tv" ORDER BY bouquet
attr Spark_One devStateIcon on:rc_GREEN:off off:rc_YELLOW:on absent:rc_STOP:on
attr Spark_One group Multimedia
attr Spark_One http-method POST
attr Spark_One icon dreambox
attr Spark_One model spark7162
attr Spark_One room Schlafzimmer
attr Spark_One webCmd channel:input


#########################################
###### Fritzbox-Parameter anzeigen ######
#########################################

#define FritzBoxValues weblink htmlCode {ShowFritzBoxValues()}

#############################
###### Fritzbox-Wecker ######
#############################

#define FBWeckzeit dummy

define Sonnenaufgang dummy
attr Sonnenaufgang group Umwelt
attr Sonnenaufgang room Haus
define Sonnenuntergang dummy
attr Sonnenuntergang group Umwelt
attr Sonnenuntergang room Haus

define Sun_RiseSet_Timer at *02:50:15 { my $s = sunrise();; fhem("set Sonnenaufgang $s");; $s = sunset();; fhem("set Sonnenuntergang $s");; }
attr Sun_RiseSet_Timer room CUL_HM

############################################
####### Benachrichtigung bei Events ########
############################################

define events holiday
attr events group Events
attr events room Haus
define CheckEventHeute at *20:30:00 {\
my $Eventname;;\
my $EventHeute;;\
$EventHeute = fhem("get events today");;\
print $EventHeute;;\
if ($EventHeute ne "none") {\
  $Eventname = "Erinnerung: $EventHeute" ;;\ fhem("set DM500HD msg message 180 $Eventname");;\
}\
}


#########################
####### DASHBOARD #######
#########################

define Dashboard Dashboard
attr Dashboard dashboard_colcount 5
attr Dashboard dashboard_lockstate lock
attr Dashboard dashboard_row top-center-bottom
attr Dashboard dashboard_rowcentercolwidth 20,20,20,20,20
attr Dashboard dashboard_tab1groups Schalter,Multimedia,Wetter,Automation,Batteriestati,Systembefehle,Steckdosen,Gruppenschaltungen,Abwesenheitssteuerung,Umwelt
attr Dashboard dashboard_tab1icon control_all_on_off
attr Dashboard dashboard_tab1name Allgemein
attr Dashboard dashboard_tab1sorting t0c100,Schalter,true,324,96:t0c100,Multimedia,true,436,112:t0c100,Batteriestati,true,330,134:t0c0,Steckdosen,true,311,111:t0c0,Gruppenschaltungen,true,311,77:t0c1,Abwesenheitssteuerung,true,332,162:t0c2,Wetter,true,332,409:t0c3,Systembefehle,true,208,245:t0c200,Umwelt,true,203,99:t0c200,Automation,true,312,99:
attr Dashboard dashboard_tabcount 1
attr Dashboard dashboard_width 1700
attr Dashboard sortby webCmd
define Dashboard_weblink weblink htmlCode {DashboardAsHtml("Dashboard")}
attr Dashboard_weblink room DashboardRoom



#########################################################
#######           neues Wetter modul        #############
#########################################################

define MyWeather Weather 651465 3600 de
define Forecast Weather 651465 3600 de
define Wetterneu weblink htmlCode { WeatherAsHtml("MyWeather")}
attr Wetterneu group Wetter
attr Wetterneu htmlattr width="240" height="330" frameborder="1" marginheight="0" marginwidth="0"

#########################################################################
## Funktion......: FHEM Systembefehle
#########################################################################

#in der commandref beschrieben. immer <icon name>:<name der angezeigt werden soll>:<kommando das ausgeführt werden soll>.

define systemCommands weblink cmdList Update:Save:save Restart:Shutdown_Restart:shutdown+restart Update:Update_Check:update+check Restart:Reread_cfg:rereadcfg
attr systemCommands devStateIcon .*:system_backup
attr systemCommands group Systembefehle
attr systemCommands room System

#######################################
############ Batteriestatus ###########
#######################################

define battStatus readingsGroup .*:[Bb]attery
attr battStatus group Batteriestati
attr battStatus mapping Garagentor
attr battStatus noheading 1
attr battStatus valueIcon {'battery.ok' => 'batterie@green', 'battery.low' => 'batterie@red'}


#Wohnzimmer:

#Vase:
define Vase CUL_HM 23D2DD
attr Vase .devInfo 010100
attr Vase .stc 10
attr Vase autoReadReg 4_reqStatus
attr Vase eventMap off:aus on:an
attr Vase expert 2_full
attr Vase firmware 1.12
attr Vase group Steckdosen
attr Vase model HM-LC-SW1-PL2
attr Vase peerIDs 00000000,
attr Vase room Wohnzimmer
attr Vase serialNr KEQ0********
attr Vase subType switch
attr Vase webCmd aus:an
#define FileLog_Vase FileLog ./log/Vase-%Y.log Vase
#attr FileLog_Vase logtype text
#attr FileLog_Vase room Wohnzimmer

#Sideboard:
define Sideboard CUL_HM 23D2DE
attr Sideboard .devInfo 010100
attr Sideboard .stc 10
attr Sideboard autoReadReg 4_reqStatus
attr Sideboard eventMap off:aus on:an
attr Sideboard expert 2_full
attr Sideboard firmware 1.12
attr Sideboard group Steckdosen
attr Sideboard model HM-LC-SW1-PL2
attr Sideboard peerIDs 00000000,
attr Sideboard room Wohnzimmer
attr Sideboard serialNr KEQ********
attr Sideboard subType switch
attr Sideboard webCmd aus:an
#define FileLog_Weihnachtsbaum FileLog ./log/Weihnachtsbaum-%Y.log Weihnachtsbaum
#attr FileLog_Weihnachtsbaum logtype text
#attr FileLog_Weihnachtsbaum room Wohnzimmer

#Gruppenschaltung aller Steckdosen im EG

define Alle_Steckdosen_EG structure room Vase Sideboard
attr Alle_Steckdosen_EG eventMap off:aus on:an
attr Alle_Steckdosen_EG group Gruppenschaltungen
attr Alle_Steckdosen_EG room Wohnzimmer
attr Alle_Steckdosen_EG webCmd aus:an

#Wohnzimmerbeleuchtung ein/aus bei Sonnenaufgang/-untergang zwecks Test
#define SunRise at *{sunrise("CIVIL",0,"5:00","8:00")} set Alle an
#define SunSet at *{sunset("CIVIL",0,"15:00","18:10")} set Alle aus

#Wohnzimmerbeleuchtung zufällig ein/aus bei Abwesenheit (aktivieren über dummy Schalter "Abwesend")
define Abwesend dummy
attr Abwesend group Abwesenheitssteuerung
attr Abwesend room Haus
attr Abwesend webCmd ja:nein
define Verreist dummy
attr Verreist group Abwesenheitssteuerung
attr Verreist room Haus
attr Verreist webCmd ja:nein
define Urlaub dummy
attr Urlaub group Abwesenheitssteuerung
attr Urlaub room Haus
attr Urlaub webCmd ja:nein
#define RTW RandomTimer  +00:00:03 Vase 18:30:00 500
#attr RTW disableCond (!isAbwesend())
#attr ZufallsTimerWohnzimmer switchmode 500/500


define RT_Vase_Abwesenheit RandomTimer *{sunset_abs("HORIZON=0",0,"16:00","17:30")} Vase 18:30 500
attr RT_Vase_Abwesenheit disableCond (!isAbwesend())
attr RT_Vase_Abwesenheit group Abwesenheitssteuerung
attr RT_Vase_Abwesenheit keepDeviceAlive 1
attr RT_Vase_Abwesenheit room Wohnzimmer

define RT_Sideboard_Abwesenheit RandomTimer *{sunset_abs("HORIZON=0",0,"16:00","17:30")} Sideboard 18:30 500
attr RT_Sideboard_Abwesenheit disableCond (!isAbwesend())
attr RT_Sideboard_Abwesenheit group Abwesenheitssteuerung
attr RT_Sideboard_Abwesenheit keepDeviceAlive 1
attr RT_Sideboard_Abwesenheit room Wohnzimmer

define Steckdosen_EG_aus_Woche at *23:30:00 { if (1<= $wday < 6) { fhem ("set Alle_Steckdosen_EG off")}}
attr Steckdosen_EG_aus_Woche group Automation
define Steckdosen_EG_aus_WE at *01:00:00 { if ($wday == 1 || $wday == 7) { fhem ("set Alle_Steckdosen_EG off")}}
attr Steckdosen_EG_aus_WE group Automation


#Floorplan
#define Erdgeschoss FLOORPLAN

#################################
### WeekdayTimer funktioniert ###
#################################

#define Alles_aus_nachts weekdayTimer Alle_Steckdosen_EG 7|15:24|aus 7|15:28|aus




FHEM auf QNAP per VM / HM LAN Adapter / diverse HM-Devices
QNAP TVS 463
VU+ Duo4kSE
Sony 75ZD9

marvin78

Je mehr Komponenten desto länger dauert das "Speichern" welches auch ein neu einlesen der gesamten Konfig bewirkt. Das ist völlig normal und die FB ist auch nicht gerade die schnellste. Mach doch alle Änderungen einfach im Web-Frontend. Das ist ohnehin sicherer und schnell.

Michi240281

Ok!

Manche Sachen gehen ja nicht übers Frontend, z.B. RoomIcons oder neue Geräte anlegen (defines).
FHEM auf QNAP per VM / HM LAN Adapter / diverse HM-Devices
QNAP TVS 463
VU+ Duo4kSE
Sony 75ZD9

marvin78

Natürlich geht das. Die Roomicons definierst du als Attribute von FHEMWEB und defines machst du oben über die Eingabezeile. Ich habe die fhem.cfg seit Monaten nicht angefasst und "define" ständig. Ich behaupte, dass fast alles über das Frontend geht.

Michi240281

#4
Stimmt! War mir garnicht so bewusst!

Warum habe ich eigentlich mehere FHEMWEB Instanzen?

FHEMWEB:192.168.188.177:56306 Connected
FHEMWEB:192.168.188.177:56307 Connected
FHEMWEB:192.168.188.177:56308 Connected
FHEMWEB:192.168.188.177:56309 Connected
FHEMWEB:192.168.188.177:56310 Connected


Ich habe (wie meiner Signatur zu entnehmen ist) auch ein QNAP 419P. Würde das performance-mäßig einen großen Sprung zur FB darstellen? Und ist der Umzug einfach zu bewerkstelligen?
FHEM auf QNAP per VM / HM LAN Adapter / diverse HM-Devices
QNAP TVS 463
VU+ Duo4kSE
Sony 75ZD9