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:

    Was heisst das genau? Bekommst Du einen Fehler oder was ist?

    TypeError: this.requireLog is not a function

    seq.0	2020-09-05 14:14:40.717	warn	(20750) Terminated (UNCAUGHT_EXCEPTION): Without reason
    seq.0	2020-09-05 14:14:40.298	info	(20750) starting. Version 0.0.1 in /opt/iobroker/node_modules/iobroker.seq, node: v12.18.3, js-controller: 3.1.6
    host.iobroker	2020-09-05 14:14:39.287	info	instance system.adapter.seq.0 started with pid 20750
    host.iobroker	2020-09-05 14:14:09.241	info	Restart adapter system.adapter.seq.0 because enabled
    host.iobroker	2020-09-05 14:14:09.241	error	instance system.adapter.seq.0 terminated with code 6 (UNCAUGHT_EXCEPTION)
    seq.0	2020-09-05 14:14:08.704	warn	(20731) Terminated (UNCAUGHT_EXCEPTION): Without reason
    seq.0	2020-09-05 14:14:08.156	info	(20731) starting. Version 0.0.1 in /opt/iobroker/node_modules/iobroker.seq, node: v12.18.3, js-controller: 3.1.6
    seq.0	2020-09-05 14:14:07.700	error	at internal/main/run_main_module.js:17:47
    seq.0	2020-09-05 14:14:07.700	error	at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:71:12)
    seq.0	2020-09-05 14:14:07.700	error	at Function.Module._load (internal/modules/cjs/loader.js:878:14)
    seq.0	2020-09-05 14:14:07.700	error	at Module.load (internal/modules/cjs/loader.js:985:32)
    seq.0	2020-09-05 14:14:07.700	error	at Object.Module._extensions..js (internal/modules/cjs/loader.js:1157:10)
    seq.0	2020-09-05 14:14:07.700	error	at Module._compile (internal/modules/cjs/loader.js:1137:30)
    seq.0	2020-09-05 14:14:07.700	error	at Object.<anonymous> (/opt/iobroker/node_modules/iobroker.seq/main.js:122:5)
    seq.0	2020-09-05 14:14:07.700	error	at new Seq (/opt/iobroker/node_modules/iobroker.seq/main.js:22:14)
    seq.0	2020-09-05 14:14:07.700	error	(20731) TypeError: this.requireLog is not a function
    seq.0	2020-09-05 14:14:07.699	error	(20731) uncaught exception: this.requireLog is not a function
    host.iobroker	2020-09-05 14:14:07.275	info	instance system.adapter.seq.0 started with pid 20731
    host.iobroker	2020-09-05 14:13:37.249	info	Restart adapter system.adapter.seq.0 because enabled
    host.iobroker	2020-09-05 14:13:37.249	error	instance system.adapter.seq.0 terminated with code 6 (UNCAUGHT_EXCEPTION)
    
    apollon77A Offline
    apollon77A Offline
    apollon77
    schrieb am zuletzt editiert von apollon77
    #4

    @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

    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
    MicM IdleBitI 2 Antworten Letzte Antwort
    1
    • 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

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

      @IdleBit
      Kannst dir mal https://github.com/Mic-M/ioBroker.logparser ansehen, dort habe ich den Log Transporter umgesetzt. ;)
      In io-package.json
      Und hier in der main.js: function subscribeToAdapterLogs()
      748059a2-e15e-4bca-8db0-7003bf8324ea-image.png

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

                              673

                              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