iobroker Logging zu syslog

Fragen zur Installation von ioBroker auf unterschiedlichen Plattformen.
Antworten
Benutzeravatar
apollon77
guru
Beiträge: 4161
Registriert: 10.04.2015, 12:27

iobroker Logging zu syslog

Beitrag von apollon77 » 15.11.2016, 23:28

Hey All,

ich habe heute rausgefunden das syslog schon eingebaut ist und mit zwei Kleinigkeiten direkt nutzbar ist:

1.) cd /opt/iobroker/node_modules/iobroker.js-controller/
2.) npm install winston-syslog
3.) Editieren von /opt/iobroker/iobroker-data/iobroker.json
Da ist ein Abschnitt "transport" wo der zweite Unterientrag Syslog ist. Dort "enabled" auf "true" setzen und die anderen Werte wie man es braucht

Und jetzt noch dafür sorgen das der eingetragene Host auch Syslog im entsprechenden Protokoll empfangen kann und fertig :-)

Vllt hilft es ja jemandem :-)

Ingo F

Benutzeravatar
Bluefox
Site Admin
Beiträge: 7853
Registriert: 13.07.2014, 14:42
Kontaktdaten:

Re: iobroker Logging zu syslog

Beitrag von Bluefox » 16.11.2016, 08:38

Ich denke, dass winston-syslog sollte man in /opt/iobroker installieren. Sonst verschwindet das Modul nach js-Controller update

Benutzeravatar
apollon77
guru
Beiträge: 4161
Registriert: 10.04.2015, 12:27

Re: iobroker Logging zu syslog

Beitrag von apollon77 » 16.11.2016, 09:36

Was spricht dagegen es offiziell mit zu installieren mit den dependecies vom js-controller?!

Benutzeravatar
Bluefox
Site Admin
Beiträge: 7853
Registriert: 13.07.2014, 14:42
Kontaktdaten:

Re: iobroker Logging zu syslog

Beitrag von Bluefox » 16.11.2016, 23:01

apollon77 hat geschrieben:Was spricht dagegen es offiziell mit zu installieren mit den dependecies vom js-controller?!
Ich glaube nichts. Damals, dachte ich, dass da Fehlermeldungen wegen node-gyp kommen werden , aber jetzt sowieso letsencrypt dabei ist und produziert jede Menge Fehler.

Benutzeravatar
apollon77
guru
Beiträge: 4161
Registriert: 10.04.2015, 12:27

Re: iobroker Logging zu syslog

Beitrag von apollon77 » 17.11.2016, 08:22

;)
Dann wäre offizieller support schon cool denke ich

cybertron
professional
Beiträge: 106
Registriert: 03.05.2015, 16:01

Re: iobroker Logging zu syslog

Beitrag von cybertron » 17.11.2016, 11:58

Koennte mal jemand den Bereich aus der iobroker.json als ausgefülltes Beispiel posten?

Ich wuerde das Ganze gern auf einen im Netz ohnehin vorhanden syslog-Server schicken.

Danke & Gruss
Silvio

Benutzeravatar
apollon77
guru
Beiträge: 4161
Registriert: 10.04.2015, 12:27

Re: iobroker Logging zu syslog

Beitrag von apollon77 » 17.11.2016, 12:03

Siehe https://github.com/ioBroker/ioBroker.js ... -dist.json
Ist an sich alles drin.

Musst nur log -> transport -> syslog1 das "enabled": true machen und unter "Host" den Server eintragen wenn nicht localhost

Benutzeravatar
sissiwup
professional
Beiträge: 492
Registriert: 27.07.2015, 11:53

Re: iobroker Logging zu syslog

Beitrag von sissiwup » 13.01.2018, 23:18

Hallo,

bei mir passiert da nix. Hat das schon wer zum laufen bekommen?
Habe die CCU2 und div. andere Logs auf meinen Log-Server liegen,

ioBroker will aber nicht.

Code: Alles auswählen

 "log": {
    "level": "info",
    "maxDays": 30,
    "transport": {
      "file1": {
        "type": "file",
        "enabled": true,
        "filename": "log/iobroker",
        "fileext": ".log",
        "maxsize": null,
        "maxFiles": null
      },
      "syslog1": {
                "type":                 "syslog",
                "enabled":              true,

                "host":                 "192.168.1.13",
                "host_comment":         "The host running syslogd, defaults to localhost.",

                "port_comment":         "The port on the host that syslog is running on, defaults to syslogd's default port(514/UD
P).",

                "protocol":             "udp4",
                "protocol_comment":     "The network protocol to log over (e.g. tcp4, udp4, unix, unix-connect, etc).",

                "path_comment":         "The path to the syslog dgram socket (i.e. /dev/log or /var/run/syslog for OS X).",
                "facility_comment":     "Syslog facility to use (Default: local0).",
                "localhost":            "iobroker",
                "localhost_comment":    "Host to indicate that log messages are coming from (Default: localhost).",
                "sysLogType_comment":   "The type of the syslog protocol to use (Default: BSD).",
                "app_name_comment":     "The name of the application (Default: process.title).",
                "eol_comment":          "The end of line character to be added to the end of the message (Default: Message without
 modifications)."
            }
    }
MfG

Sissi

-------------------------------------------
1 CCU2 1 LanGateway 1 Pi-Gateway 1 Zoatec AD02 für ioBroker/MySQL
--------------------------------------------

Benutzeravatar
sissiwup
professional
Beiträge: 492
Registriert: 27.07.2015, 11:53

Re: iobroker Logging zu syslog

Beitrag von sissiwup » 14.01.2018, 00:57

da fehlte noch was, jetzt gehts bei mir:

Code: Alles auswählen

      "syslog1": {
                "type":                 "syslog",
                "enabled":              true,

                "host":                 "192.168.1.13",
                "host_comment":         "The host running syslogd, defaults to localhost.",
                "port":                 "514",
                "port_comment":         "The port on the host that syslog is running on, defaults to syslogd's default port(514/UDP).",

                "protocol":             "udp4",
                "protocol_comment":     "The network protocol to log over (e.g. tcp4, udp4, unix, unix-connect, etc).",
                "path":                 "",
                "path_comment":         "The path to the syslog dgram socket (i.e. /dev/log or /var/run/syslog for OS X).",
                "facility_comment":     "Syslog facility to use (Default: local0).",
                "localhost":            "iobroker",
                "localhost_comment":    "Host to indicate that log messages are coming from (Default: localhost).",
                "sysLogType_comment":   "The type of the syslog protocol to use (Default: BSD).",
                "app_name_comment":     "The name of the application (Default: process.title).",
                "eol_comment":          "The end of line character to be added to the end of the message (Default: Message without modifications)."
            }
MfG

Sissi

-------------------------------------------
1 CCU2 1 LanGateway 1 Pi-Gateway 1 Zoatec AD02 für ioBroker/MySQL
--------------------------------------------

Benutzeravatar
sissiwup
professional
Beiträge: 492
Registriert: 27.07.2015, 11:53

Re: iobroker Logging zu syslog

Beitrag von sissiwup » 14.01.2018, 01:59

Code: Alles auswählen

  "syslog1": {
                "type":                 "syslog",
                "enabled":              true,

                "host":                 "192.168.1.13",
                "host_comment":         "The host running syslogd, defaults to localhost.",
                "port":                 "514",
                "port_comment":         "The port on the host that syslog is running on, defaults to syslogd's default port(514/UDP).",
                "pid":                  "0",
                "protocol":             "udp4",
                "protocol_comment":     "The network protocol to log over (e.g. tcp4, udp4, unix, unix-connect, etc).",
                "path":                 "",
                "path_comment":         "The path to the syslog dgram socket (i.e. /dev/log or /var/run/syslog for OS X).",
                "facility_comment":     "Syslog facility to use (Default: local0).",
                "localhost":            "iobroker",
                "localhost_comment":    "Host to indicate that log messages are coming from (Default: localhost).",
                "sysLogType_comment":   "The type of the syslog protocol to use (Default: BSD).",
                "app_name_comment":     "The name of the application (Default: process.title).",
                "eol_comment":          "The end of line character to be added to the end of the message (Default: Message without modifications)."
            }
Mit "pid" = 0 erreicht man, das die Prozess-ID nicht mit im Namen geloggt wird, das stört oft beim Filtern.
MfG

Sissi

-------------------------------------------
1 CCU2 1 LanGateway 1 Pi-Gateway 1 Zoatec AD02 für ioBroker/MySQL
--------------------------------------------

Benutzeravatar
sissiwup
professional
Beiträge: 492
Registriert: 27.07.2015, 11:53

Re: iobroker Logging zu syslog

Beitrag von sissiwup » 14.01.2018, 02:08

Kann es sein dass

process.title nur vom js-controller verwendet wird und nicht von den Adaptern?
Wie kann ich adapter.appName oder ähnliches übergeben?
MfG

Sissi

-------------------------------------------
1 CCU2 1 LanGateway 1 Pi-Gateway 1 Zoatec AD02 für ioBroker/MySQL
--------------------------------------------

Benutzeravatar
sissiwup
professional
Beiträge: 492
Registriert: 27.07.2015, 11:53

Re: iobroker Logging zu syslog

Beitrag von sissiwup » 10.03.2018, 09:31

Hallo,

das "pid = 0" kann man entfernen wenn man seinen Logging Server beibringt pid und syslogtag zu trennen:

/etc/rsyslog.d/mysql.conf

Code: Alles auswählen

### Configuration file for rsyslog-mysql
### Changes are preserved
$template dbFormat,"insert into SystemEvents (Message, Facility, FromHost, Priority, DeviceReportedTime, ReceivedAt, InfoUnitID, SysLogTag, processid) values ('%msg%', %syslogfacility%, '%HOSTNAME%
', %syslogpriority%, '%timereported:::date-mysql%', '%timegenerated:::date-mysql%', %iut%, '%syslogtag:R,ERE,1,FIELD:([a-zA-Z\/]+)(\[[0-9]{1,5}\])*:--end%', '%syslogtag:R,ERE,1,BLANK:\[([0-9]{1,5})
\]--end%')",sql


$ModLoad ommysql
*.* :ommysql:localhost,Syslog,rsyslog-mysql,PASSWORT;dbFormat
Mysql-User:
User: rsyslog-mysql
Passwort: PASSWORT
MfG

Sissi

-------------------------------------------
1 CCU2 1 LanGateway 1 Pi-Gateway 1 Zoatec AD02 für ioBroker/MySQL
--------------------------------------------

Benutzeravatar
wendy2702
guru
Beiträge: 2430
Registriert: 18.01.2016, 22:12
Wohnort: Herzogenrath

Re: iobroker Logging zu syslog

Beitrag von wendy2702 » 10.03.2018, 10:20

Damit ich das richtig verstehe:

Bedeutet das iobroker.log wird zusätzlich in Linux SYSLOG geschrieben?
Bitte keine Fragen per PN, die gehören ins Forum!

Benutzeravatar
sissiwup
professional
Beiträge: 492
Registriert: 27.07.2015, 11:53

Re: iobroker Logging zu syslog

Beitrag von sissiwup » 10.03.2018, 22:15

Ja, genau.
MfG

Sissi

-------------------------------------------
1 CCU2 1 LanGateway 1 Pi-Gateway 1 Zoatec AD02 für ioBroker/MySQL
--------------------------------------------

Antworten