UPGRADE IP 9 verfügbar!
Timberwolf VISU jetzt mit NEUEM Layout Editor
Freie Anordnung, Reihenfolge und Größe der Widgets - viele weitere Verbesserungen
Infos im Wiki: https://elabnet.atlassian.net/l/cp/06SeuHRJ

NEU! Insider & Leistungsmerkmale FÜR ALLE freigeschaltet
Damit kann nun jeder das Upgrade vornehmen und VISU & IFTTT testen. Alle Info hier: viewtopic.php?f=8&t=5074

[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: 292
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: 3741
Registriert: So Aug 12, 2018 8:44 am
Hat sich bedankt: 1164 Mal
Danksagung erhalten: 2058 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“