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

    Hi,

    ich bin grade dabei mir ein kleinen Adapter zu Bauen mit dem ich die ioBroker Logs ins Seq pumpen kann.
    Und habe mir auch schon die Hilfe zu Log Transporter durchgelesen, aber komme nun nicht weiter.

    Der Adapter ist nach den aktuellen Template erstellt und nun habe ich das Problem das ich das

    requireLog(true)
    

    nicht wie erwartet setzten kann ....

    class Seq extends utils.Adapter {
    
        constructor(options) {
            super({
                ...options,
                name: 'seq',
            });
    
            this.requireLog(true);
            this.on('ready', this.onReady.bind(this));
            this.on('unload', this.onUnload.bind(this));
            this.on('log', this.onLog.bind(this));
        }  
        .............
    

    Hat da wer ein Tip für mich?

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

    @IdleBit sagte in Adapter mit aktiven Log Transporter:

    ich bin grade dabei mir ein kleinen Adapter zu Bauen mit dem ich die ioBroker Logs ins Seq pumpen kann.

    BTW, sehr interessantes Vorhaben von dir :sunglasses:
    Sag Bescheid, falls sich da ggf. Synergien zum Log Parser Adapter ergeben.

    1 Antwort Letzte Antwort
    0
    • apollon77A apollon77

      @IdleBit Ist das korrekt?

      To activate in your adapter, add "logTransporter": true to the common structure of your io-package.json.

      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

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

      @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 1 Antwort Letzte Antwort
      0
      • 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

                          716

                          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