Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Entwicklung
  4. [Gelöst] Adapter mit aktiven Log Transporter

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    2.6k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.0k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.3k

[Gelöst] Adapter mit aktiven Log Transporter

Geplant Angeheftet Gesperrt Verschoben Entwicklung
help wantedlog transporter
17 Beiträge 4 Kommentatoren 1.4k Aufrufe 3 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • IdleBitI IdleBit

    @apollon77 said in Adapter mit aktiven Log Transporter:

    wenn ja hast Du nach dem einbau davon einmal "iobroker upload meinadaptername" gemacht?
    Die Funktion wird nur definiert wenn es auch in der io-package korrekr steht

    Ja das habe ich beides so gemacht.

    @Mic said in Adapter mit aktiven Log Transporter:

    @IdleBit
    Kannst dir mal https://github.com/Mic-M/ioBroker.logparser ansehen, dort habe ich den Log Transporter umgesetzt. ;)

    Hehe, hatte ich schon längste bei dir abgeschaut :D

    IdleBitI Offline
    IdleBitI Offline
    IdleBit
    schrieb am zuletzt editiert von
    #8

    Ich habe das mal als Script umgesetzt, das würde eingleich reichen.
    Allerdings würde ich es doch am liebsten als Adapter umsetzten.

    const seq = require('seq-logging');
    const logger = new seq.Logger({serverUrl: 'http://192.168.0.251:5000'});
    
    onLog('silly', data => {
        const message = ExtractMessage (data.message);
        SeqLog('Verbose', data.from, message)
    });
    
    onLog('debug', data => {
        const message = ExtractMessage (data.message);
        SeqLog('Debug', data.from, message)
    });
    
    onLog('info', data => {
        const message = ExtractMessage (data.message);
        SeqLog('Information', data.from, message)
    });
    
    onLog('warn', data => {
        const message = ExtractMessage (data.message);
        SeqLog('Warning', data.from, message)
    });
    
    onLog('error', data => {
        const message = ExtractMessage (data.message);
        SeqLog('Error', data.from, message)
    });
    
    function SeqLog(logLevel, source, message) {
        logger.emit({
            timestamp: message.timestamp,
            level: logLevel,
            messageTemplate: '{Source}: ' + message,
            properties: {
                Application: 'ioBroker',
                Source: source
            }
        });
    }
    
    function ExtractMessage (inMessage) {
        const index = Object.values(IndexesOf(inMessage, / /g))[0][1];
        const message = inMessage.substring(index);
        return message;
    }
    
    function IndexesOf(string, regex) {
        let match, indexes = {};
        regex = new RegExp(regex);
        while (match = regex.exec(string)) {
            if (!indexes[match[0]]) indexes[match[0]] = [];
            indexes[match[0]].push(match.index);
        }
        return indexes;
    }
    

    Hier mal eine Ausgabe von den Warn, Error und Info Events in Seq :)
    db134285-46b9-4cd8-a9cd-39c359afb506-image.png

    MicM 1 Antwort Letzte Antwort
    0
    • IdleBitI IdleBit

      Ich habe das mal als Script umgesetzt, das würde eingleich reichen.
      Allerdings würde ich es doch am liebsten als Adapter umsetzten.

      const seq = require('seq-logging');
      const logger = new seq.Logger({serverUrl: 'http://192.168.0.251:5000'});
      
      onLog('silly', data => {
          const message = ExtractMessage (data.message);
          SeqLog('Verbose', data.from, message)
      });
      
      onLog('debug', data => {
          const message = ExtractMessage (data.message);
          SeqLog('Debug', data.from, message)
      });
      
      onLog('info', data => {
          const message = ExtractMessage (data.message);
          SeqLog('Information', data.from, message)
      });
      
      onLog('warn', data => {
          const message = ExtractMessage (data.message);
          SeqLog('Warning', data.from, message)
      });
      
      onLog('error', data => {
          const message = ExtractMessage (data.message);
          SeqLog('Error', data.from, message)
      });
      
      function SeqLog(logLevel, source, message) {
          logger.emit({
              timestamp: message.timestamp,
              level: logLevel,
              messageTemplate: '{Source}: ' + message,
              properties: {
                  Application: 'ioBroker',
                  Source: source
              }
          });
      }
      
      function ExtractMessage (inMessage) {
          const index = Object.values(IndexesOf(inMessage, / /g))[0][1];
          const message = inMessage.substring(index);
          return message;
      }
      
      function IndexesOf(string, regex) {
          let match, indexes = {};
          regex = new RegExp(regex);
          while (match = regex.exec(string)) {
              if (!indexes[match[0]]) indexes[match[0]] = [];
              indexes[match[0]].push(match.index);
          }
          return indexes;
      }
      

      Hier mal eine Ausgabe von den Warn, Error und Info Events in Seq :)
      db134285-46b9-4cd8-a9cd-39c359afb506-image.png

      MicM Offline
      MicM Offline
      Mic
      Developer
      schrieb am zuletzt editiert von
      #9

      @IdleBit

      Hast du geprüft, dass "logTransporter": true im korrekten Zweig der io-package.json ist?

      Seq sieht sehr interessant aus, hab ich noch nicht gekannt. Wozu nutzt du es denn sonst noch so?

      IdleBitI 1 Antwort Letzte Antwort
      0
      • MicM Mic

        @IdleBit

        Hast du geprüft, dass "logTransporter": true im korrekten Zweig der io-package.json ist?

        Seq sieht sehr interessant aus, hab ich noch nicht gekannt. Wozu nutzt du es denn sonst noch so?

        IdleBitI Offline
        IdleBitI Offline
        IdleBit
        schrieb am zuletzt editiert von
        #10

        @Mic sagte in Adapter mit aktiven Log Transporter:

        @IdleBit

        Hast du geprüft, dass "logTransporter": true im korrekten Zweig der io-package.json ist?

        Ja ich bin der Meinung:
        https://github.com/o0shojo0o/ioBroker.seq/blob/master/io-package.json#L53

        @Mic sagte in Adapter mit aktiven Log Transporter:

        @IdleBit
        Seq sieht sehr interessant aus, hab ich noch nicht gekannt. Wozu nutzt du es denn sonst noch so?

        Seq setzte ich soweit es geht für alles ein was Logs schmeißt :)

        Auf jeden Fall für alle meine selbst geschrieben Programme, denn so ein Programm übergreifendes Log ein einfach ein feuchter Traum! :D

        MicM 2 Antworten Letzte Antwort
        0
        • IdleBitI IdleBit

          @Mic sagte in Adapter mit aktiven Log Transporter:

          @IdleBit

          Hast du geprüft, dass "logTransporter": true im korrekten Zweig der io-package.json ist?

          Ja ich bin der Meinung:
          https://github.com/o0shojo0o/ioBroker.seq/blob/master/io-package.json#L53

          @Mic sagte in Adapter mit aktiven Log Transporter:

          @IdleBit
          Seq sieht sehr interessant aus, hab ich noch nicht gekannt. Wozu nutzt du es denn sonst noch so?

          Seq setzte ich soweit es geht für alles ein was Logs schmeißt :)

          Auf jeden Fall für alle meine selbst geschrieben Programme, denn so ein Programm übergreifendes Log ein einfach ein feuchter Traum! :D

          MicM Offline
          MicM Offline
          Mic
          Developer
          schrieb am zuletzt editiert von
          #11

          @IdleBit sagte in Adapter mit aktiven Log Transporter:

          Ja ich bin der Meinung:
          https://github.com/o0shojo0o/ioBroker.seq/blob/master/io-package.json#L53

          Sieht gut aus.

          In deiner main.js:
          Du hast this.requireLog(true) im constructor der Adapter-Klasse, schieb das mal in die onReady()-Funktion, dort als erste Zeile.

          IdleBitI 1 Antwort Letzte Antwort
          0
          • IdleBitI IdleBit

            @Mic sagte in Adapter mit aktiven Log Transporter:

            @IdleBit

            Hast du geprüft, dass "logTransporter": true im korrekten Zweig der io-package.json ist?

            Ja ich bin der Meinung:
            https://github.com/o0shojo0o/ioBroker.seq/blob/master/io-package.json#L53

            @Mic sagte in Adapter mit aktiven Log Transporter:

            @IdleBit
            Seq sieht sehr interessant aus, hab ich noch nicht gekannt. Wozu nutzt du es denn sonst noch so?

            Seq setzte ich soweit es geht für alles ein was Logs schmeißt :)

            Auf jeden Fall für alle meine selbst geschrieben Programme, denn so ein Programm übergreifendes Log ein einfach ein feuchter Traum! :D

            MicM Offline
            MicM Offline
            Mic
            Developer
            schrieb am zuletzt editiert von Mic
            #12

            @IdleBit sagte in Adapter mit aktiven Log Transporter:

            Seq setzte ich soweit es geht für alles ein was Logs schmeißt :)

            Auf jeden Fall für alle meine selbst geschrieben Programme, denn so ein Programm übergreifendes Log ein einfach ein feuchter Traum! :D

            Cool. Wohl auch als Developer sehr sinnvoll, oder? Muss ich mir echt mal näher ansehen.

            Nachtrag:
            Hmm, aber da braucht unter Linux Docker, oder? Also nicht einfach zu installieren auf einer Linux-Instanz (z.B. Proxmox VM / Container)?

            IdleBitI 1 Antwort Letzte Antwort
            0
            • MicM Mic

              @IdleBit sagte in Adapter mit aktiven Log Transporter:

              Seq setzte ich soweit es geht für alles ein was Logs schmeißt :)

              Auf jeden Fall für alle meine selbst geschrieben Programme, denn so ein Programm übergreifendes Log ein einfach ein feuchter Traum! :D

              Cool. Wohl auch als Developer sehr sinnvoll, oder? Muss ich mir echt mal näher ansehen.

              Nachtrag:
              Hmm, aber da braucht unter Linux Docker, oder? Also nicht einfach zu installieren auf einer Linux-Instanz (z.B. Proxmox VM / Container)?

              IdleBitI Offline
              IdleBitI Offline
              IdleBit
              schrieb am zuletzt editiert von
              #13

              @Mic sagte in Adapter mit aktiven Log Transporter:

              Nachtrag:
              Hmm, aber da braucht unter Linux Docker, oder? Also nicht einfach zu installieren auf einer Linux-Instanz (z.B. Proxmox VM / Container)?

              Tatsächlich nutze ich @work einen Windows Server und @ home/RootServer Docker unter Linux

              IdleBitI 1 Antwort Letzte Antwort
              0
              • IdleBitI IdleBit

                @Mic sagte in Adapter mit aktiven Log Transporter:

                Nachtrag:
                Hmm, aber da braucht unter Linux Docker, oder? Also nicht einfach zu installieren auf einer Linux-Instanz (z.B. Proxmox VM / Container)?

                Tatsächlich nutze ich @work einen Windows Server und @ home/RootServer Docker unter Linux

                IdleBitI Offline
                IdleBitI Offline
                IdleBit
                schrieb am zuletzt editiert von
                #14

                So Problem behoben nochmals Danke @Dutchman für den kleinen Exkurs ;)
                Das this.requireLog(true); gehört in der onReady() Funktion.

                DutchmanD apollon77A 2 Antworten Letzte Antwort
                0
                • MicM Mic

                  @IdleBit sagte in Adapter mit aktiven Log Transporter:

                  Ja ich bin der Meinung:
                  https://github.com/o0shojo0o/ioBroker.seq/blob/master/io-package.json#L53

                  Sieht gut aus.

                  In deiner main.js:
                  Du hast this.requireLog(true) im constructor der Adapter-Klasse, schieb das mal in die onReady()-Funktion, dort als erste Zeile.

                  IdleBitI Offline
                  IdleBitI Offline
                  IdleBit
                  schrieb am zuletzt editiert von
                  #15

                  @Mic sagte in [Gelöst] Adapter mit aktiven Log Transporter:

                  @IdleBit sagte in Adapter mit aktiven Log Transporter:

                  Ja ich bin der Meinung:
                  https://github.com/o0shojo0o/ioBroker.seq/blob/master/io-package.json#L53

                  Sieht gut aus.

                  In deiner main.js:
                  Du hast this.requireLog(true) im constructor der Adapter-Klasse, schieb das mal in die onReady()-Funktion, dort als erste Zeile.

                  Och nöööööö, das habe ich ja total überlesen.... da war ja schon die Lösung! :man-facepalming:

                  1 Antwort Letzte Antwort
                  0
                  • IdleBitI IdleBit

                    So Problem behoben nochmals Danke @Dutchman für den kleinen Exkurs ;)
                    Das this.requireLog(true); gehört in der onReady() Funktion.

                    DutchmanD Offline
                    DutchmanD Offline
                    Dutchman
                    Developer Most Active Administrators
                    schrieb am zuletzt editiert von
                    #16

                    @IdleBit sagte in [Gelöst] Adapter mit aktiven Log Transporter:

                    So Problem behoben nochmals Danke @Dutchman für den kleinen Exkurs ;)
                    Das this.requireLog(true); gehört in der onReady() Funktion.

                    :+1: und direkt Debugger gelernt :grin:

                    @IdleBit sagte in [Gelöst] Adapter mit aktiven Log Transporter:

                    Och nöööööö, das habe ich ja total überlesen.... da war ja schon die Lösung!

                    :joy: :zipper_mouth_face:

                    1 Antwort Letzte Antwort
                    0
                    • IdleBitI IdleBit

                      So Problem behoben nochmals Danke @Dutchman für den kleinen Exkurs ;)
                      Das this.requireLog(true); gehört in der onReady() Funktion.

                      apollon77A Offline
                      apollon77A Offline
                      apollon77
                      schrieb am zuletzt editiert von
                      #17

                      @IdleBit sagte in [Gelöst] Adapter mit aktiven Log Transporter:

                      Das this.requireLog(true); gehört in der onReady() Funktion.

                      exakt!

                      Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                      • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                      • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                      1 Antwort Letzte Antwort
                      0
                      Antworten
                      • In einem neuen Thema antworten
                      Anmelden zum Antworten
                      • Älteste zuerst
                      • Neuste zuerst
                      • Meiste Stimmen


                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      703

                      Online

                      32.6k

                      Benutzer

                      82.3k

                      Themen

                      1.3m

                      Beiträge
                      Community
                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                      ioBroker Community 2014-2025
                      logo
                      • Anmelden

                      • Du hast noch kein Konto? Registrieren

                      • Anmelden oder registrieren, um zu suchen
                      • Erster Beitrag
                        Letzter Beitrag
                      0
                      • Home
                      • Aktuell
                      • Tags
                      • Ungelesen 0
                      • Kategorien
                      • Unreplied
                      • Beliebt
                      • GitHub
                      • Docu
                      • Hilfe