Skip to content

ioBroker Allgemein

29.7k Topics 436.7k Posts
Integrationtsplattform für IoT

NEWS

  • Gelöst: [Tester] kein Aufruf von http://RPi2-1:8081/#javascript möglich

    Locked Moved
    4
    0 Votes
    4 Posts
    1k Views
    derAugeD
    Lösung: über den Schalter Admin muss die Anzeige von "Skript" aktiviert werden. Danach geht es Gruß Jürgen
  • Adapter KODI

    Moved
    1
    0 Votes
    1 Posts
    842 Views
    No one has replied
  • Wo kann die richtige Adapter-Version ausgelesen werden?

    Moved
    6
    0 Votes
    6 Posts
    3k Views
    ruhr70R
    @Bluefox: Versionnumbers werden nur upgedatet, wenn man auf "Update" in Admin druckt oder "iobroker update" aufruft. Dadurch, dass du über git installiert hast wurde natürlich kein "update" aufgerufen. Oder? ` Das hilft schon einmal vom Verständnis her. Boah… das ist doch schon ein paar Tage her ;-) Im Produktivsystem habe ich noch nicht über git installiert. In der Regel im Webinterface, was dann mit dem Restart nicht funktioniert und dann auf der Konsole iobroker neu starten. In selten Fällen über iobroker update. Nicht über npm, nicht über git. Nach der Vorgehensweise hätte aber dann die richtige Version im Objekt stehen müssen. Wobei ich mir bei 0.8.10 nicht ganz sicher bin. Da gab es doch was... :? Am Sichersten bin ich wahrscheinlich, wenn ich auf Dateiebene ./iobroker update ausführe und dann im Skript das Ergebnis verarbeite. ! ```` $ ./iobroker update update done Adapter "zwave" : 0.2.5 Adapter "yr" : 1.0.1 , installed 1.0.1 Adapter "yamaha" : 0.1.5 Adapter "wolf" : 0.1.0 Adapter "web" : 1.4.3 , installed 1.4.3 Adapter "weatherunderground": 0.1.0 , installed 0.1.0 Adapter "vis-timeandweather": 1.1.0 , installed 1.1.0 Adapter "vis-rgraph" : 0.0.2 Adapter "vis-plumb" : 0.1.6 Adapter "vis-metro" : 1.0.0 Adapter "vis-lcars" : 1.0.0 Adapter "vis-keyboard" : 0.0.2 Adapter "vis-justgage" : 0.4.1 , installed 0.4.1 Adapter "vis-jqui-mfd" : 0.1.0 , installed 0.1.0 Adapter "vis-hqwidgets" : 1.0.0 , installed 1.0.0 Adapter "vis-google-fonts": 0.1.0 Adapter "vis-fancyswitch": 1.0.0 , installed 1.0.0 Adapter "vis-colorpicker": 0.1.3 Adapter "vis-bars" : 0.1.1 Adapter "vis" : 0.9.4 , installed 0.9.4 Adapter "vcard" : 0.0.6 Adapter "text2command" : 1.0.0 , installed 1.0.0 Adapter "terminal" : 0.1.2 , installed 0.1.2 Adapter "telegram" : 0.2.4 , installed 0.2.4 Adapter "starline" : 0.1.5 Adapter "sonos" : 0.1.8 , installed 0.1.8 Adapter "squeezebox" : 0.1.0 Adapter "samsung" : 0.0.10 Adapter "rpi" : 0.0.4 Adapter "rickshaw" : 0.3.1 , installed 0.3.1 Adapter "pushover" : 0.1.1 , installed 0.1.1 Adapter "pushbullet" : 0.0.11 Adapter "owfs" : 0.0.2 Adapter "onkyo" : 0.2.0 Adapter "occ" : 0.2.4 Adapter "sql" : 0.1.2 , installed 0.1.2 Adapter "socketio" : 1.4.0 , installed 1.4.0 Adapter "simple-api" : 1.1.0 , installed 1.1.0 Adapter "scenes" : 0.2.5 , installed 0.2.5 Adapter "sayit" : 0.3.17 , installed 0.3.17 Adapter "s7" : 0.2.4 Adapter "ping" : 1.1.1 , installed 1.1.1 Adapter "noolite" : 0.0.1 Adapter "node-red" : 1.0.0 , installed 1.0.0 Adapter "mysensors" : 0.2.3 Adapter "mqtt" : 1.0.2 Adapter "modbus" : 0.3.10 Adapter "mobile" : 0.4.0 Adapter "miele" : 0.0.12 Adapter "megad" : 1.2.0 Adapter "knx" : 0.2.10 Controller "js-controller" : 0.8.10 , installed 0.8.10 Adapter "javascript" : 2.0.6 , installed 2.0.6 Adapter "influxdb" : 0.1.2 Adapter "icons-ultimate-png": 0.1.0 Adapter "icons-open-icon-library-png": 0.1.3 Adapter "icons-mfd-svg" : 0.1.2 Adapter "icons-mfd-png" : 0.1.2 Adapter "icons-material-svg": 0.1.0 Adapter "icons-material-png": 0.1.0 Adapter "icons-addictive-flavour-png": 0.1.0 Adapter "ical" : 1.1.1 Adapter "hmm" : 1.0.1 Adapter "homekit" : 0.1.4 Adapter "hue" : 0.5.3 , installed 0.5.3 Adapter "hm-rpc" : 1.1.3 , installed 1.1.3 Adapter "hm-rega" : 0.3.7 , installed 0.3.7 Adapter "history" : 0.2.1 , installed 0.2.1 Adapter "harmony" : 0.5.5 Adapter "geofency" : 0.1.4 , installed 0.1.4 Adapter "fritzbox" : 0.2.1 , installed 0.2.1 Adapter "flot" : 1.0.0 , installed 1.0.0 Adapter "email" : 0.1.2 , installed 0.1.2 Adapter "dwd" : 2.0.3 , installed 2.0.3 Adapter "cul" : 0.0.4 Adapter "chromecast" : 1.0.6 Adapter "b-control-em" : 0.1.1 Adapter "artnet" : 0.0.3 Adapter "admin" : 1.0.3 , installed 1.0.3
  • History-Adapter: Wie an Werte kommen?

    Moved
    9
    0 Votes
    9 Posts
    1k Views
    AlCalzoneA
    Danke, aber ich möchte die Historie der Rohdaten haben, keine Graphen. EDIT: Der passende Thread im Script-Forum ist hier zu finden. Bitte dort antworten um Chaos zu vermeiden: http://forum.iobroker.net/viewtopic.php … caf#p25385
  • FritzBox Adapter und interne Gespräche

    Moved
    1
    0 Votes
    1 Posts
    681 Views
    No one has replied
  • Backup MySQL-Datenbank

    Moved
    4
    0 Votes
    4 Posts
    2k Views
    ruhr70R
    @sissiwup: Hallo, Der Umterschied ist, das bei meinem Skript pro Datenbank eine Datei erstellt wird. Das löschen kannst du meine ich über ioBroker machen, indem du die Speicherdauer Der Datenpunkte heruntersetzt. ` Ich habe jetzt Dein Skript angepasst. Danke! Das die unterschiedliche Datenbanken gesondert abgespeichert werden, macht alleine deshalb schon Sinn, da ich für mySQL extra einen eigenen Server genommen habe und dort auch andere Datenbanken anlegen möchte. Dann wird bei Dir die Datenbank komprimiert, was ungefähr dieSicherung um den Faktor 10 verkleinert. Und ich hab was gelernt, nachdem ich mir das Skript getestet habe :) Das mit den Datenpunkten löschen schaue ich mir trotzdem noch einmal direkt in SQL an.
  • Fehler in der node-red installation

    Moved
    6
    0 Votes
    6 Posts
    2k Views
    BluefoxB
    @sissiwup: npm install iobroker.node-red --production --prefix "/opt/iobroker" (System call) npm ERR! Linux 4.1.19-v7+ npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "install" "iobroker.node-red" "--production" "--prefix" "/opt/iobroker" npm ERR! node v4.4.3 npm ERR! npm v2.15.1 npm ERR! path /opt/iobroker/node_modules/iobroker.node-red/node_modules/node-red/public npm ERR! code ENOTEMPTY npm ERR! errno -39 npm ERR! syscall rmdir npm ERR! ENOTEMPTY: directory not empty, rmdir '/opt/iobroker/node_modules/iobroker.node-red/node_modules/node-red/public' npm ERR! npm ERR! If you need help, you may report this error at: npm ERR! <https: github.com/npm/issues="">npm ERR! Please include the following file with any support request: npm ERR! /opt/iobroker/npm-debug.log</https:> ```` ` Hm… Ich weiß noch nicht, was ich da machen kann. Aber so was wird gehen (vorübergehend): cd /opt/iobroker iobroker stop node-red cd node_modules/iobroker.node-red sudo rm * -R cd .. sudo rmdir iobroker.node-red cd .. sudo npm install iobroker.node-red
  • Frage zu History

    Moved
    13
    0 Votes
    13 Posts
    2k Views
    BluefoxB
    @jhg: @Homoran: @jhg: jetzt müsste man nur noch die Zahl der im RAM zu haltenden Daten auf 0 setzen können. ` Ja und nein! Wenn man auf die Daten schnell zugreifen will, sollten ruhig einige Daten im RAM gehalten werden. Aber eben nicht ausschließlich. Sofort auf Platte schreiben UND nn Datenpunkte noch im RAM halten. Gruß Rainer ` Ja, das wäre wahrscheinlich die beste Lösung. ` Habe gestern das Problem gefunden. Bald wird funktionieren.
  • Probleme mit dem hmm Adapter

    Moved
    1
    0 Votes
    1 Posts
    993 Views
    No one has replied
  • Tester: SQLIITE_BUSY: database is locked

    Locked Moved
    1
    0 Votes
    1 Posts
    655 Views
    No one has replied
  • Frage zum Email Adapter

    Moved
    1
    0 Votes
    1 Posts
    699 Views
    No one has replied
  • Ical Adapter

    Moved
    10
    2
    0 Votes
    10 Posts
    2k Views
    R
    Bezüglich der Probleme der Serientermine wäre es ganz toll, wenn der Adapter bei einem Fehler im Log ausgeben würde, welcher Termin das Problem bereitet, so könnte man dieses Problem dann schnell und einfach lösen. Eine Log Ausgabe ala "Datum - Uhrzeit - FEHLER!" wäre sehr hilfreich…. eventuell noch welcher Kalender das Problem macht.
  • Mehrere Kalender im iCal Adapter - Wie siehts am besten aus?

    Moved
    1
    0 Votes
    1 Posts
    855 Views
    No one has replied
  • 0 Votes
    3 Posts
    761 Views
    BluefoxB
    @derAuge: Habe adapter.weatherunderground.0 installiert Nach der Installation ist er sofort aktiv. (ist das so gewollt?) Habe den Adapter dann deaktiviert. Trotzdem wird versucht ihn zu starten 2016-05-03 15:00:00.703 - info: host.RPi3-1 instance system.adapter.weatherunderground.0 started with pid 26288 2016-05-03 15:00:04.299 - error: adapter disabled 2016-05-03 15:00:05.364 - error: host.RPi3-1 instance system.adapter.weatherunderground.0 terminated with code 3 (Adapter disabled or invalid config) 2016-05-03 15:45:00.699 - info: host.RPi3-1 instance system.adapter.weatherunderground.0 started with pid 28472 2016-05-03 15:45:04.636 - error: adapter disabled 2016-05-03 15:45:05.719 - error: host.RPi3-1 instance system.adapter.weatherunderground.0 terminated with code 3 (Adapter disabled or invalid config) Gruß Jürgen ` Danke fürs Fehlermeldung. Problem gefunden. Mit dem Update kann ich nicht reproduzieren.
  • IoBroker admin nicht mehr erreichbar

    Moved
    7
    0 Votes
    7 Posts
    1k Views
    F
    Hallo Pix, Cux und auch die CCU mal neugestartet, aber leider ohne Erfolg. Immer noch keine Werte. Was kann ich noch machen? Es hat auf jeden Fall schon funktioniert. Habe den hm-rpc nochmal neuinstalliert. Jetzt fehlt "1". Gruß Fritzo 427_objekte.png 427_rpc1.png
  • [gelöst]Frage: Terminal / Prozess löschen, wenn zu hungrig

    Moved
    3
    0 Votes
    3 Posts
    1k Views
    P
    Hab es so gemacht: http://forum.iobroker.net/viewtopic.php … 165#p25165 Danke! Gruß, Pix
  • Adapter mit Shell/execute am Serververzeichnis

    Moved
    8
    0 Votes
    8 Posts
    7k Views
    P
    Hallo, @ruhr70: Habe mit dem Beispiel vom paul53 ein kleins Skript erstellt, welches mit free -m den Arbeitsspeicher unter Ubuntu (deutsch) ausliest Die Ausgabe von Free muss so aussehen, sonst muss das Skript angepasst werden: gesamt benutzt frei gemns. Puffer/Cache verfügbar Speicher: 7966 1238 5916 10 812 6624 Auslagerungsspeicher: 8187 0 8187 Rasbian hat eine englische Ausgabe mit zusätzlichen Werten. Da passt es nicht. Eine Anpassung ist aber schnell gemacht. Skript zur Ermittlung des freien Arbeitsspeicher per exec() ! // ermittelt auf Linuxrechner den Speicherverbrauch // mit dem Linux Befehl: free // // Beduetung der Werte: // http://www.selflinux.org/selflinux/html/information_basic02.html ! // getestet unter Ubuntu 16.04 mit deutscher Ausgabe von "free -m" ! // free -m auf der Kosole muss folgende Tabelle ausgeben: ! //# free -m // gesamt benutzt frei gemns. Puffer/Cache verfügbar //Speicher: 7966 1238 5916 10 812 6624 //Auslagerungsspeicher: 8187 0 8187 ! var pfad = "Systeminfos.host.Speicher" + "."; var cronStr = "*/1 * * * *"; ! var forceCreation = false; ! var datenpunkte = { 'Speicher_1_gesamt': { "init":0, "common": { name: 'Speicher gesamt, der für das System verfügbar ist', desc: 'Speicher gesamt, der für das System verfügbar ist (ohne Kernel)', type: 'number', unit: 'MByte', role: 'value' } }, 'Speicher_2_benutzt': { "init":0, "common": { name: 'Speicher benutzt', desc: 'Speicher benutzt', type: 'number', unit: 'MByte', role: 'value' } }, 'Speicher_3_frei': { "init":0, "common": { name: 'Speicher frei', desc: 'Speicher frei', type: 'number', unit: 'MByte', role: 'value' } }, 'Speicher_4_gemeinsam': { "init":0, "common": { name: 'gemeinsamer Speicher für Prozesse', desc: 'gemeinsamer Speicher für Prozesse', type: 'number', unit: 'MByte', role: 'value' } }, 'Speicher_5_Buffer_Cache': { "init":0, "common": { name: 'Speicher als Cache', desc: 'Speicher als Cache', type: 'number', unit: 'MByte', role: 'value' } }, 'Speicher_6_verfügbar': { "init":0, "common": { name: 'verfügbarer Speicher', desc: 'verfügbarer Speicher', type: 'number', unit: 'MByte', role: 'value' } }, 'Auslagerungsspeicher_1_gesamt': { "init":0, "common": { name: 'Auslagerungsspeicher gesamt', desc: 'Auslagerungsspeicher gesamt', type: 'number', unit: 'MByte', role: 'value' } }, 'Auslagerungsspeicher_2_benutzt': { "init":0, "common": { name: 'Auslagerungsspeicher benutzt', desc: 'Auslagerungsspeicher benutzt', type: 'number', unit: 'MByte', role: 'value' } }, 'Auslagerungsspeicher_3_frei': { "init":0, "common": { name: 'Auslagerungsspeicher frei', desc: 'Auslagerungsspeicher frei', type: 'number', unit: 'MByte', role: 'value' } } }; ! function createDp() { var name; var init; var common; for (var dp in datenpunkte) { name = pfad + dp; init = datenpunkte[dp].init; common = datenpunkte[dp].common; createState(name, init , forceCreation, common); } } ! function writeDp(arr) { var i = 0; for (var dp in datenpunkte) { setState(pfad + dp,arr[i++]); } } ! // Speicher mit "free -m" auslesen function freeMem() { exec('free -m', function(err, stdout, stderr) { if (err) { log(err); return; } stdout = stdout.replace(/[\D]+/, ""); // alle Zeichen vor der ersten Ziffer entfernen stdout = stdout.split(/[\D]+/g); // alle nicht-Ziffern als Trennzeichen für das Array verwenden (im Block) //log(stdout); writeDp(stdout); }); } ! // regelmässige Wiederholungen // ----------------------------------------------------------------------------- schedule(cronStr, freeMem); ! // main // ----------------------------------------------------------------------------- function main() { freeMem(); } ! // Start Skript: // ----------------------------------------------------------------------------- ! createDp(); setTimeout(main, 500); ! Die Werte in den Objekten: filename="ioBroker_Skript_free.jpg" index="0">~~ ` ich habe auf Basis dieses Skriptes auch ein Skript gebaut, welches mir die CPU Last eines bestimmten Prozesses anzeigt. Es geht um meinen Xeoma Videoserver. Später soll der bei zu hoher Last über längere Zeit auch neu gestartet werden. Hatte das http://forum.iobroker.net/viewtopic.php?f=8&t=2668&p=23698&hilit=xeoma#p23626. Alter, urpsrünglicher Code (nur für die Referenz, neues Skript weiter unten verfügbar) ! ``` `/* Fragt Load von Xeoma Prozess ab und psiechert pid und load in Objekte ! basierend auf Skript von paul53 und ruhr70 http://forum.iobroker.net/viewtopic.php?f=20&t=2764#p24937 ! Startbefehl im Ordner /Appplications: xeoma64bit.app/Contents/MacOS/xeoma -core -log ! # ps -e -o pcpu,pid,args | grep xeoma 58,4 4820 xeoma64bit.app/Contents/MacOS/xeoma -core -log 0,0 4929 grep xeoma ! message_flag verursacht eine Gewisse Hysterese, damit nicht beim erstmaligen Überschreiten des Grenzwertes gleich neugestartet wird. ! erstellt: 02.05.2016 von pix auf Basis von Skripten von ruhr70 und paul53 04.05.2016 kill zugefügt / ! var grenzwert = 80; // max Leistung in Prozent ohne Konsequenzen ! var pfad = "Xeoma.Prozess" + "."; var cronStr = "/1 * * * *"; var logging = false; var idLast = 'javascript.' + instance + '.' + pfad + 'Last'; var idName = 'javascript.' + instance + '.' + pfad + 'Name'; var idPid = 'javascript.' + instance + '.' + pfad + 'pid'; ! createState(idLast, { name: 'Xeoma Last', desc: 'Prozessorlast, die Xeoma Prozess erzeugt', type: 'number', unit: '%' }); ! createState(idPid, { name: 'Xeoma pid', desc: 'Prozessnummer des Xeoma Programms', type: 'number' }); ! createState(idName, { name: 'Xeoma Name', desc: 'Name des Prozesses in dem Xeoma läuft', type: 'string' }); ! function killXeoma() { var pid = getState(idPid).val, name = getState(idName).val; // var kommando = 'kill -HUP ' + pid; geht nicht var kommando = 'kill -TERM ' + pid + ';cd /Applications;' + name; if (typeof pid !== undefined) exec(kommando, function(err, stdout, stderr) { if (err) { log(err, 'error'); return; } }); log('XEOMA Prozess - Neustart wegen zuviel CPU-Last'); } ! // Last mit Befehl "ps -e -o pcpu,pid,args | grep xeoma" auslesen function loadXeoma() { exec('ps -e -o pcpu,pid,args | grep xeoma', function(err, stdout, stderr) { if (err) { log(err); return; } var zeile = stdout.split(/[\u000A]+/g); // alle Zeilenvorschübe als Trennzeichen für das Array verwenden zeile = zeile[zeile.length-2]; // nur vorletzte Zeile interessiert zeile = zeile.replace(/[\D]+/, ""); // alle Zeichen vor der ersten Ziffer entfernen var element = zeile.split(/[\u0020]+/g); // alle Leerzeichen als Trennzeichen für das Array verwenden // Last var last = parseFloat(element[0].replace(",",".")); // Komma durch Punkt ersetzen und in Zahl wandeln if (logging) log('Last: ' + last); setState(pfad + 'Last', last); // PID var pid = parseInt(element[1], 10); if (logging) log('PID: ' + pid); setState(pfad + 'pid', pid); // Name var name=''; // alle restlichen Elemente mit ' ' wieder verbinden for (var i=2; i < element.length; i++) { name = name + ' ' + element[i]; } setState(pfad + 'Name', name); }); } ! var message_flag = 0; on(idLast, function (data) { log(message_flag); if (data.state.val > grenzwert && message_flag < 5) message_flag++; if (data.state.val > grenzwert && message_flag >= 5) { log('CPU Last XEOMA, derzeit (' + data.state.val + '%) ist seit ' + message_flag + 'min über dem Grenzwert (' + grenzwert + '%). Maßnahmen ergreifen! pid: ' + getState(idPid).val + ' Name: ' + getState(idName).val); killXeoma(); } if (data.state.val < data.oldState.val) message_flag--; if (message_flag < 0) message_flag = 0; if (logging) log('Message Flag: ' + message_flag); }); ! schedule(cronStr, loadXeoma); ! function main() { loadXeoma(); } ! // bei Skriptstart setTimeout(main,500); Neuestes Skript: ! >! ~~[spoiler]~~[code]/* Fragt Load von Xeoma Prozess ab und psiechert pid und load in Objekte ! basierend auf Skript von paul53 und ruhr70 http://forum.iobroker.net/viewtopic.php?f=20&t=2764#p24937 ! Startbefehl im Ordner /Appplications: xeoma64bit.app/Contents/MacOS/xeoma -core -log ! # ps -e -o pcpu,pid,args | grep xeoma 58,4 4820 xeoma64bit.app/Contents/MacOS/xeoma -core -log 0,0 4929 grep xeoma ! message_flag verursacht eine Gewisse Hysterese, damit nicht beim erstmaligen Überschreiten des Grenzwertes gleich neugestartet wird. ! erstellt: 02.05.2016 von pix auf Basis von Skripten von ruhr70 und paul53 04.05.2016 kill zugefügt 05.05.2016 richtigen Prozess mit maximaler Last finden / ! var grenzwert = 80; // max Leistung in Prozent ohne Konsequenzen ! var pfad = "Xeoma.Prozess" + "."; var cronStr = "/1 * * * *"; var logging = false; var idLast = 'javascript.' + instance + '.' + pfad + 'Last'; var idName = 'javascript.' + instance + '.' + pfad + 'Name'; var idPid = 'javascript.' + instance + '.' + pfad + 'pid'; ! createState(idLast, { name: 'Xeoma Last', desc: 'Prozessorlast, die Xeoma Prozess erzeugt', type: 'number', unit: '%' }); ! createState(idPid, { name: 'Xeoma pid', desc: 'Prozessnummer des Xeoma Programms', type: 'number' }); ! createState(idName, { name: 'Xeoma Name', desc: 'Name des Prozesses in dem Xeoma läuft', type: 'string' }); ! function killXeoma() { var pid = getState(idPid).val, name = getState(idName).val; // var kommando = 'kill -HUP ' + pid; geht nicht var kommando = 'kill -TERM ' + pid + ';cd /Applications;' + name; if (typeof pid !== undefined) exec(kommando, function(err, stdout, stderr) { if (err) { log(err, 'error'); return; } }); log('XEOMA Prozess - Neustart wegen zuviel CPU-Last'); } ! function findeZeile(array) { // array aus zeilen var zeilemax = 0; var teillastmax = 0; var reihe; var spalte; var spalte_last; for (var j = 0; j < array.length; j++) { //if (logging) log('Zeile: ' + j + ' von ' + array.length); reihe = array[j].replace(/[\D]+/, ""); // alle Zeichen vor der ersten Ziffer entfernen spalte_array = reihe.split(/[\u0020]+/g); // alle Leerzeichen als Trennzeichen für das Array verwenden //if (logging) log('Teile: '+ spalte_array); spalte_last = parseFloat(spalte_array[0].replace(",",".")); // Komma durch Punkt ersetzen und in Zahl wandeln //if (logging) log('Teillast: '+ spalte_last); if (spalte_last > teillastmax) { teillastmax = spalte_last; zeilemax = j; } } return (zeilemax); } ! // Last mit Befehl "ps -e -o pcpu,pid,args | grep xeoma" auslesen function loadXeoma() { exec('ps -e -o pcpu,pid,args | grep xeoma', function(err, stdout, stderr) { if (err) { log(err); return; } else if (logging) log(stdout); var zeilen_array = stdout.split(/[\u000A]+/g); // alle Zeilenvorschübe als Trennzeichen für das Array verwenden var zeile = zeilen_array[findeZeile(zeilen_array)]; // ab hier gehts nur um die zeile zeile = zeile.replace(/[\D]+/, ""); // alle Zeichen vor der ersten Ziffer entfernen var element = zeile.split(/[\u0020]+/g); // alle Leerzeichen als Trennzeichen für das Array verwenden // Last var last = parseFloat(element[0].replace(",",".")); // Komma durch Punkt ersetzen und in Zahl wandeln setState(pfad + 'Last', last); // PID var pid = parseInt(element[1], 10); setState(pfad + 'pid', pid); // Name var name=''; // alle restlichen Elemente mit ' ' wieder verbinden for (var i=2; i < element.length; i++) { name = name + ' ' + element[i]; } if (logging) log('PID: ' + pid + ' Last: ' + last + '% Name: ' + name); setState(pfad + 'Name', name); }); } ! var message_flag = 0; on(idLast, function (data) { if (data.state.val > grenzwert && message_flag < 5) message_flag++; if (data.state.val > grenzwert && message_flag >= 5) { log('CPU Last XEOMA, derzeit (' + data.state.val + '%) ist seit ' + message_flag + 'min über dem Grenzwert (' + grenzwert + '%). Maßnahmen ergreifen! pid: ' + getState(idPid).val + ' Name: ' + getState(idName).val); killXeoma(); } if (data.state.val < data.oldState.val) message_flag--; if (message_flag < 0) message_flag = 0; if (logging) log('Message Flag: ' + message_flag); }); ! schedule(cronStr, loadXeoma); ! function main() { loadXeoma(); } ! // bei Skriptstart setTimeout(main,500);` Allerdings kam ich bzw. meine ioBroker Installation mit den Funktionen zum Anlegen der Datenpunkte nicht zurecht. Das war ein richtiges Durcheinander. Deshalb lege ich die DP lieber weiter von Hand mit createState an. Dennoch vielen Dank an paul53 und ruhr70. ! Es werden drei DP angelegt mir dem minütlichen Update der Last, der ProzessID und dem Namen, bzw. Aufruf des Prozesses (brauche ich später für evetuell für Neustart, wenn <size size="85">~~[size]~~kill -HUP pid[/size]</size> nicht funktioniert). ! Gruß ! Pix ! EDIT 04.05.2016 - 1720 Uhr kill zugefügt ! EDIT 05.05.2016 - 1335 Uhr es wird nun nach der Zeile mit der max Last gesucht, nicht immer die vorletzte Zeile verwendet.[/i][/code][/spoiler][/i]
  • Mobile Ui aktualisieren ?

    Moved
    3
    0 Votes
    3 Posts
    781 Views
    Lorien31L
    Ah gefunden, vielen Dank für den Hinweis.
  • Browser Auslastung

    Moved
    3
    0 Votes
    3 Posts
    647 Views
    HomoranH
    Die Geschwindigkeit wird wohl auch an den verwendeten Komponenten hängen So habe ich mir zuletzt ein Billignotebook (14" FullHD) bei Medion für 222€ gekauft, den Speicher von 2GB auf 8GB erweitert und von WIN 8.1 auf WIN 10 upgedated. Natürlich ist so ein Rechner nicht die Rakete. Die CPU (Pentium N3540) erreicht im =http://www.cpubenchmark.net/cpu_list.p … -Benchmark gerade mal 1970 Punkte. Das geht auch bei alten Notebooks bequem auf das doppelte bis dreifache. Erschwerend kommr bei mir weiterhin zum Tragen, das ich grundsätzlich mit dem http://www.sirrix.de/content/pages/BitBox.htm arbeite der systembedingt etwas langsam ist. Auch die Auflösung des Bildschirms spielt bei vis eine weitere Rolle. Und natürlich beim Notebook auch die WLAN-Qualität beim Arbeiten am ggf. ebenfalls mit WLAN angeschlossenen ioBroker Server. Gruß Rainer
  • WakeOnLAN Befehl

    Moved
    6
    0 Votes
    6 Posts
    2k Views
    P
    @ruhr70: Das Modul muss beim Adapter nicht eingetragen werden. ioBroker hat es schon im Bauch. ` Ok, das wusste ich nicht. Ich ändere das oben dezent. Danke, Pix

410

Online

32.8k

Users

82.7k

Topics

1.3m

Posts