NEWS
Error aus Log File per Pushover/Telegram versenden
-
Hallo zusammen,
leider antwortet in einem älteren Thread keiner mehr, daher probiere ich es nun mal soGibt es nicht inzwischen eine einfache Möglichkeit, dass wenn ein Error im Log steht diesen per Pushover oder Telegram zu versenden?
Viele Grüsse
Sali -
-
Ich muss dieses Thema nochmal aufleben lassen.
Ich verwende dieses Skript hier:var telegramtext onLog('error', data => { telegramtext="Error occured:" + "\n" + data.message setTimeout(function() { sendTo("telegram.0","send", { text: telegramtext, chatID: 123456789 }); console.log('Following was sent to telegram: ' + data.message);},10000) });
Jetzt kam es letzte Nacht zu einigen Errors beim IOT Adapter und irgendwann dann auch zu unzähligen Errors beim Telegram adapter weil ich nicht mehr so viele Nachrichten gesendet werden konnten, was dann zu einem 800MB Log File heute morgen gesorgt hat. Wie limitiert ihr die Nachrichten die aufgrund Errors gesendet werden oder verhindert solche Situationen?
Danke und Gruss
-
@sali84 versuch mal folgendes:
let timeout = null; let message = ''; onLog('error', data => { if (data.from && data.from.includes('telegram.')) { return; // prevent loop } message += data.message + '\n'; const telegramMessage = "Error occured:" + "\n" + message clearTimeout(timeout); timeout = setTimeout(() => { sendTo("telegram.0","send", { text: telegramMessage , chatID: 123456789 }); message = ''; console.log('Following was sent to telegram: ' + message ); },10000) });
-
Guten Abend zusammen,
Ich lasse mir über das obige Skript die iobroker Fehlermeldungen per Telegramm zuschicken. Leider steht aber manchmal im log das der Text zu lang ist und deswegen nicht gesendet wurde.
Dieses Script nutze Ich:
let timeout = null;
let message = '';onLog('error', data => {
if (data.from && data.from.includes('telegram.')) {
return; // prevent loop
}
message += data.message + '\n';
const telegramMessage = "Error occured:" + "\n" + message
clearTimeout(timeout);
timeout = setTimeout(() => {
sendTo("telegram.0","send", {
text: telegramMessage ,
chatID: 123456789
});
console.log('Following was sent to telegram: ' + message );
message = '';
},10000)
});Ich hab irgendwo was davon gelesen das man die Nachricht aufteilen muss, aber ich weiß ehrlich gesagt nicht wie.
Könnte mir jemand helfen .
Besten Dank