NEU! UPGRADE IP 10 verfügbar!
Optimierte Darstellung von VISU Editor und VISU Client - sowie viele weitere Verbesserungen
Infos im Wiki: https://elabnet.atlassian.net/l/cp/8HzePCm3

Insider & Leistungsmerkmale FÜR ALLE freigeschaltet
Ab sofort kann jeder die neue VISU & IFTTT testen. Info: viewtopic.php?f=8&t=5074

Release V 4 am 15. Juni 2024
Es gibt nun einen fixen Termin. Info: viewtopic.php?f=8&t=5117

NEU! Ausführliches Video Tutorial zur IP 10
Jetzt werden alle Fragen beantwortet. Das Video: https://youtu.be/_El-zaC2Rrs

[Gelöst] Plugins werden unkontrolliert aufgerufen

Alle Fragen rund um den WireGate Server
Forumsregeln
  • Denke bitte an aussagekräftige Titel und gebe dort auch die [Firmware] an. Wenn ETS oder CometVisu beteiligt sind, dann auch deren Version
  • Bitte mache vollständige Angaben zu Deinem Server, dessen ID und dem Online-Status in Deiner Signatur. Hilfreich ist oft auch die Beschreibung der angeschlossener Hardware sowie die verwendeten Protokolle
  • Beschreibe Dein Projekt und Dein Problem bitte vollständig. Achte bitte darauf, dass auf Screenshots die Statusleiste sichtbar ist
  • Bitte sei stets freundlich und wohlwollend, bleibe beim Thema und unterschreibe mit deinem Vornamen. Bitte lese alle Regeln, die Du hier findest: https://wiki.timberwolf.io/Forenregeln

Ersteller
Advenoni
Reactions:
Beiträge: 296
Registriert: So Aug 12, 2018 11:55 am
Wohnort: Krumbach
Hat sich bedankt: 17 Mal
Danksagung erhalten: 114 Mal

#11

Beitrag von Advenoni »

Hallo @blaubaerli ,

hier meine Werte:

Code: Alles auswählen

user@wiregate1619:~$ df -k
Dateisystem          1K-Bl▒cke   Benutzt Verf▒gbar Ben% Eingeh▒ngt auf
/dev/hda2              3606532   1498160   1998488  43% /
tmpfs                   121020         0    121020   0% /lib/init/rw
udev                     10240       752      9488   8% /dev
tmpfs                   121020         0    121020   0% /dev/shm
/dev/hda1                90295     43731     42710  51% /boot
none                    121020        48    120972   1% /tmp
user@wiregate1619:~$
Sollte also normal alles passen.
@Robert_Mini ,
hier noch der gesamte Code (wobei das nicht ändern sollte):

Code: Alles auswählen

# Demo-Plugin Grafiken in RRD speichern
# V1.0 2010-03-19

# Eigenen Aufruf-Zyklus auf 300 Sekunden (Default globales RRD-Intervall) setzen
$plugin_info{$plugname.'_cycle'} = $wg_config{''}{'rrd_interval'};

# Luftfeuchte Bad

# Einen Wert der Luftfeuchte von der Gruppenadresse 5/2/79 in einem rrd speichern
# Luftfeuchte_Bad ist ein beliebiger Text; keine Umlaute oder Sonderzeichen (/\: etc)
# und einmalig!
# Dann wird die Funktion knx_read mit der Gruppenadresse aufgerufen, 
# hier max. 300 sek alt
# sonst wird ein Lesetelegramm abgesetzt und die Antwort abgewartet
# DPT5 = 1 Byte 0-100%, zwei Möglichkeiten:
# DPT angeben wie unten oder Gruppenadressen aus der ETS importieren, dann kann der Datentyp entfallen
# update_rrd("Luftfeuchte_Bad","",knx_read("5/2/79",300,5));  # Gruppenadresse, maxAlter, DPT

# Beispiel für Temperaturwert (DPT9/EIS5) von "externem" Sensor
update_rrd("akt_Leistung","",knx_read("0/7/210",300,14));
update_rrd("akt_Leistung_Export","",knx_read("0/7/214",300,14));
update_rrd("akt_Aussentemp","",knx_read("0/4/176",0,9));
update_rrd("akt_Zaehlerstand_kWh","",knx_read("0/7/211",300,13));
update_rrd("Leistung_15_Min","",knx_read("0/7/212",900,13));
update_rrd("akt_Zaehlerstand_Wh","",knx_read("0/7/213",300,13)/1000);
update_rrd("HZ_Pumpe_HK1","",knx_read("0/4/180",600,5));
update_rrd("HZ_Pumpe_HK2","",knx_read("0/4/181",600,5));
update_rrd("HZ_Gang_Stellwert","",knx_read("0/3/246",600,5));
update_rrd("HZ_G-Bad_Stellwert","",knx_read("0/3/247",600,5));
update_rrd("HZ_Kueche_Stellwert","",knx_read("0/3/248",600,5));
update_rrd("HZ_Wohnen_Stellwert","",knx_read("0/3/249",600,5));
update_rrd("HZ_Technik_Stellwert","",knx_read("0/3/250",600,5));
update_rrd("HZ_Kind1_Stellwert","",knx_read("0/4/88",600,5));
update_rrd("HZ_Kind2_Stellwert","",knx_read("0/4/89",600,5));
update_rrd("HZ_Eltern_Stellwert","",knx_read("0/4/90",600,5));
update_rrd("HZ_Studio_Stellwert","",knx_read("0/4/91",600,5));
update_rrd("HZ_Bad_Stellwert","",knx_read("0/4/92",600,5));
update_rrd("HZ_G-Bad_W_Stellwert","",knx_read("0/3/251",600,5));
update_rrd("HZ_Bad_W_Stellwert","",knx_read("0/4/93",600,5));
update_rrd("HZ_Werkstatt_Stellwert","",knx_read("0/5/222",600,5));
update_rrd("HZ_HZ_HK1_EG_kein_Bedarf","",knx_read("0/4/197",0,1));
update_rrd("HZ_HZ_HK1_OG_kein_Bedarf","",knx_read("0/4/198",0,1));
update_rrd("HZ_HK1_Vorlauf","",knx_read("0/4/194",600,9));
update_rrd("HZ_HK2_Vorlauf","",knx_read("0/4/195",600,9));
update_rrd("HZ_Gang_Istwert","",knx_read("0/3/233",600,9));
update_rrd("HZ_G-Bad_Istwert","",knx_read("0/3/235",600,9));
update_rrd("HZ_Kueche_Istwert","",knx_read("0/3/237",600,9));
update_rrd("HZ_Essen_Istwert","",knx_read("0/3/239",600,9));
update_rrd("HZ_Wohnen_Istwert","",knx_read("0/3/241",600,9));
update_rrd("HZ_Technik_Istwert","",knx_read("0/3/243",600,9));
update_rrd("HZ_Kind1_Istwert","",knx_read("0/4/77",600,9));
update_rrd("HZ_Kind2_Istwert","",knx_read("0/4/79",600,9));
update_rrd("HZ_Eltern_Istwert","",knx_read("0/4/81",600,9));
update_rrd("HZ_Studio_Istwert","",knx_read("0/4/83",600,9));
update_rrd("HZ_Bad_Istwert","",knx_read("0/4/85",600,9));
update_rrd("HZ_Werkstatt_Istwert","",knx_read("0/5/221",600,9));
update_rrd("HZ_Brenner_Ein","",knx_read("0/4/187",0,1));
update_rrd("HZ_Brenner_Leistung","",knx_read("0/4/202",0,5));
update_rrd("HZ_Brenner_Pumpe","",knx_read("0/4/196",0,5));
update_rrd("HZ_Brenner_Starts","",knx_read("0/4/203",300,12));
update_rrd("HZ_Brenner_VL_Ist","",knx_read("0/4/204",3000,9));
update_rrd("HZ_Brenner_VL_Soll","",knx_read("0/4/205",300,9));
update_rrd("KWL_Aussenluft_Temp","",knx_read("0/5/27",60,9));
update_rrd("KWL_Zuluft_Temp","",knx_read("0/5/28",60,9));
update_rrd("KWL_Abluft_Temp","",knx_read("0/5/29",60,9));
update_rrd("KWL_Fortluft_Temp","",knx_read("0/5/30",60,9));
update_rrd("KWL_Aussen_Hum","",knx_read("0/5/31",60,9));
update_rrd("KWL_Zuluft_Hum","",knx_read("0/5/32",60,9));
update_rrd("KWL_Abluft_Hum","",knx_read("0/5/33",60,9));
update_rrd("KWL_Fortluft_Hum","",knx_read("0/5/34",60,9));
update_rrd("KWL_Luftstrom","",knx_read("0/5/35",60,13));
update_rrd("HZ_Solar_Kessel","",knx_read("0/4/177",600,9));
update_rrd("HZ_Solar_Modul","",knx_read("0/4/178",600,9));
update_rrd("HZ_WW_Kessel","",knx_read("0/4/179",600,9));
update_rrd("Sonnenstand_Azimuth","",knx_read("1/4/156",600,8));
update_rrd("Sonnenstand_Elevation","",knx_read("1/4/157",600,8));
update_rrd("Helligkeit_Ost","",knx_read("1/1/51",600));
update_rrd("Helligkeit_Sued","",knx_read("1/1/52",600));
update_rrd("Helligkeit_West","",knx_read("1/1/53",600));
update_rrd("Helligkeit_Daemmerung","",knx_read("1/1/54",600));
update_rrd("Windsensor","",knx_read("1/1/55",600));
update_rrd("Temp_Dach","",knx_read("1/1/56",600));
update_rrd("Regen","",knx_read("1/1/57",600,1));
update_rrd("Regen_Heizung","",knx_read("1/1/58",600,1));
update_rrd("KWL_Strom","",knx_read("0/5/38",600));
update_rrd("KWL_kWh","",knx_read("0/5/39",600));
update_rrd("HZ_Solar_Ertrag","",knx_read("0/4/207",600));


# Abgerufen können die Grafiken durch Modifikation der Grafik-URL eines vorhandenen 
# 1-Wire Sensors werden: z.B. 28.0D22CB010000_temp.rrd im letzten Beispiel durch
# Temp_Kueche.rrd ersetzen. Gross/Kleinschreibung beachten!

# Wenn etwas im Plugin-Log stehen soll, kommentarzeichen # entfernen
# Ideal auch zur Debug-Ausgabe
#return "Graphen wurden aktualisiert"; 
#Sonst 0 = Alles Ok, kein Logeintrag
return 0;
@gbglace ,
wenn es nur Plugins anginge die 1-Wire GAs betreffen, dann könnte ich das ganze ja noch nachvollziehen, es waren aber auch andere Plugins betroffen, die sich nur auf den KNX alleine beziehen.
Bild
Plugin hierzu:

Code: Alles auswählen

# return 0;
# COMPILE_PLUGIN


my $rrdFile_15min="/var/www/rrd/Gaszaehler_15min.rrd";
my $rrdFile_1h="/var/www/rrd/Gaszaehler_1h.rrd";
my $rrdFile_1d="/var/www/rrd/Gaszaehler_1d.rrd";

my $rrd_15min="Gaszaehler_15min";
my $rrd_1h="Gaszaehler_1h";
my $rrd_1d="Gaszaehler_1d";


my $Gaszaehler_ga="1/0/154";
my $Gasreste_ga="1/0/155";
my $Gasvolumen_ga="1/0/159";

$plugin_info{$plugname . '_cycle'} = 300; # Aufrufzyklus - 5 Minuten

if (!exists $plugin_info{$plugname.'_Zaehlerstand'}) {
	$plugin_info{$plugname.'_Zaehlerstand'} = 0;
}


  # RRD ggf. anlegen
  if (!-e $rrdFile_15min)
  {
    RRDs::create($rrdFile_15min,
      '--step' => 900,  # 15 Minuten
      'DS:value:COUNTER:2700:0:2147483647',
      # 15 min (für 7,5 d)      1 h (für 35 d)           24 h (für 5 y)            7 d (für 25 y)
      'RRA:AVERAGE:0.5:1:720', 'RRA:AVERAGE:0.5:4:840', 'RRA:AVERAGE:0.5:96:1826', 'RRA:AVERAGE:0.5:672:1300',
      'RRA:MIN:0.5:1:720',     'RRA:MIN:0.5:4:840',     'RRA:MIN:0.5:96:1826',     'RRA:MIN:0.5:672:1300',
      'RRA:MAX:0.5:1:720',     'RRA:MAX:0.5:4:840',     'RRA:MAX:0.5:96:1826',     'RRA:MAX:0.5:672:1300'
    );

    if (RRDs::error) {
      plugin_log($plugname, "Create COUNTER-RRDs failed for $rrdFile_15min: ".RRDs::error);
    } else {
      plugin_log($plugname, "Created COUNTER-RRD for $rrdFile_15min");
    }
  }
 # RRD für 1 Stunde
  if (!-e $rrdFile_1h)
  {
    RRDs::create($rrdFile_1h,
      '--step' => 3600,  # 1 Stunde
      'DS:value:COUNTER:2700:0:2147483647',
      # 1 h (für 35 d)           24 h (für 5 y)            7 d (für 25 y)
      'RRA:AVERAGE:0.5:1:840', 'RRA:AVERAGE:0.5:24:1826', 'RRA:AVERAGE:0.5:168:1300',
      'RRA:MIN:0.5:1:840',     'RRA:MIN:0.5:24:1826',     'RRA:MIN:0.5:168:1300',
      'RRA:MAX:0.5:1:840',     'RRA:MAX:0.5:24:1826',     'RRA:MAX:0.5:168:1300'
    );

    if (RRDs::error) {
      plugin_log($plugname, "Create COUNTER-RRDs failed for $rrdFile_1h: ".RRDs::error);
    } else {
      plugin_log($plugname, "Created COUNTER-RRD for $rrdFile_1h");
    }
  }
 # RRD für 1 Tag
  if (!-e $rrdFile_1d)
  {
    RRDs::create($rrdFile_1d,
      '--start' => -86410,
      '--step' => 86400,  # 1 Tag
      'DS:value:COUNTER:2700:0:2147483647',
      # 24 h (für 5 y)            7 d (für 25 y)
      'RRA:AVERAGE:0.5:1:1826', 'RRA:AVERAGE:0.5:672:1300',
      'RRA:MIN:0.5:1:1826',     'RRA:MIN:0.5:672:1300',
      'RRA:MAX:0.5:1:1826',     'RRA:MAX:0.5:672:1300'
    );

    if (RRDs::error) {
      plugin_log($plugname, "Create COUNTER-RRDs failed for $rrdFile_1d: ".RRDs::error);
    } else {
      plugin_log($plugname, "Created COUNTER-RRD for $rrdFile_1d");
    }
  }

#Zählerstand auslesen
	# Differenz auslesen
        my $Differenz=knx_read($Gaszaehler_ga,1,13);
        # Alten Zählerstand um Differenz erhöhen
        my $Zaehlerstand=$plugin_info{$plugname.'_Zaehlerstand'}  + $Differenz;
        # Aktuellen Wert speichern
        $plugin_info{$plugname.'_Zaehlerstand'} = $Zaehlerstand;
        # Zähler rücksetzen
        knx_write($Gasreste_ga,1,1);
        
#RRDs schreiben und Zählerstand auf den Bus
        my $count_15min=(time()-900).":".($Zaehlerstand * 9);
        my $count_1h=(time()-3600).":".($Zaehlerstand * 36);
        my $count_1d=(time()-86400).":".($Zaehlerstand * 864);
        RRDs::update("$rrdFile_15min","$count_15min");
        RRDs::update("$rrdFile_1h","$count_1h");
        RRDs::update("$rrdFile_1d","$count_1d");
        update_rrd("Gaszaehler","",$Zaehlerstand/100);
        knx_write($Gasvolumen_ga,$Zaehlerstand/100,14);
 
  
return;
Irgendwas muss gestern so um 10 Uhr schief gelaufen sein.
Wie noch zu sehen ist, lief um 9:55 das Plugin noch normal durch.
Wert abfragen, wird rückgemeldet, Zähler rücksetzen, Null wird zurückgemeldet, Plugin gibt aufsummierten Wert aus.
Ab 10 Uhr passt dann gar nichts mehr.

Nach 2 Neustarts des WG läuft soweit wieder alles. Also auch die Plugins verrichten wieder normal ihren Dienst.

Gruß,
Martin
wiregate ID:1619 / timberwolf 2400 ID:108 / 950 ID:240 ID:464, VPN offen, Reboot bitte nach Rücksprache

Robert_Mini
Reactions:
Beiträge: 3744
Registriert: So Aug 12, 2018 8:44 am
Hat sich bedankt: 1168 Mal
Danksagung erhalten: 2076 Mal

#12

Beitrag von Robert_Mini »

Advenoni hat geschrieben: Di Jan 29, 2019 6:47 am Nach 2 Neustarts des WG läuft soweit wieder alles. Also auch die Plugins verrichten wieder normal ihren Dienst.
Ich hatte ähnliches auch 2x in knapp 10 Jahren.
Ursache konnte ich nie finden. Reboot hat das ganze auch bei mir damals gelöst.

Ich setze den Thread mal auf gelöst.
Robert
Timberwolf Server 2500 / #117 (VPN offen + reboot nach Rückfrage) / zusätzlich: 3500M/#935, 3500L/#1297
Antworten

Zurück zu „WireGate Server“