Dies ist der Befehl ds-logpipe, der beim kostenlosen Hosting-Anbieter OnWorks mit einer unserer zahlreichen kostenlosen Online-Workstations wie Ubuntu Online, Fedora Online, dem Windows-Online-Emulator oder dem MAC OS-Online-Emulator ausgeführt werden kann
PROGRAMM:
NAME/FUNKTION
ds-logpipe.py – Erstellen und Lesen aus einer benannten Pipe anstelle einer Protokolldatei
ZUSAMMENFASSUNG
ds-logpipe.py /full/path/to/namedpipe
[-m maxlinestobuffer] [-u userid] [-s serverpidfile] [-t Servertimeout]
[--plugin=/path/to/pluginfile.py] [Pluginfile.arg=Wert]
BESCHREIBUNG
Mit dem Named-Pipe-Protokollskript können Sie eine Protokolldatei durch eine an eine angehängte Named-Pipe ersetzen
Skript. Der Server kann die Protokollausgabe dann an ein Skript statt an eine Protokolldatei senden. Das
ermöglicht es Ihnen, viele verschiedene Dinge zu tun, wie zum Beispiel:
* Nur bestimmte Ereignisse protokollieren, z. B. fehlgeschlagene Bindungen, Verbindungen von bestimmten IP-Adressen usw.
* Nur Zeilen protokollieren, die einem bestimmten Muster entsprechen
* Nur die letzten N Zeilen protokollieren – nützlich, um vollständige Fehlerprotokoll-Debugstufen zu aktivieren
Produktionsumgebungen
* Senden Sie eine E-Mail oder eine andere Benachrichtigung, wenn ein bestimmtes Ereignis erkannt wird
Das Skript ist in Python geschrieben und erlaubt Plugins. Standardmäßig protokolliert das Skript die
letzten N Zeilen (Standard 1000). Es stehen zwei Plugins zur Verfügung – eines, um nur fehlgeschlagene Bindungen zu protokollieren
Versuche und eine, die nur Zeilen protokolliert, die mit bestimmten regulären Ausdrücken übereinstimmen.
OPTIONAL
Nachfolgend finden Sie eine Zusammenfassung der Optionen.
/full/path/to/namedpipe
Erforderlich – vollständiger Pfad und Dateiname der Named Pipe. Wenn dies nicht existiert, dann
wird erstellt. Wenn es existiert und eine benannte Pipe ist, wird es vom Skript verwendet. Wenn es
existiert und keine Pipe ist, wird das Skript abgebrochen. Der Besitz wird derselbe sein wie
der Benutzer, der das Skript ausführt (oder sehen Sie sich die Option -u unten an).
-m|--maxlines=N
Anzahl der zu puffernden Zeilen – Standardwert ist 1000
-u|--userid=Benutzer
Die Pipe und alle anderen vom Skript erstellten Dateien werden per chown() dorthin weitergeleitet
Benutzer-ID. Dies kann ein String-Benutzer-ID-Name oder ein numerischer Benutzer-ID-Wert sein.
-s|--serverpidfile=/path/to/servername.pid
Geben Sie an, ob das Skript beendet werden soll, wenn ein bestimmter Verzeichnisserver vorhanden ist
Der vollständige Pfad zur Datei, die die Server-PID enthält. Die Standardeinstellung ist normalerweise
so etwas wie /var/run/dirsrv/slapd- .pid wo Ist
normalerweise der Hostname
-t|--servertimeout=N
Da die Server-PID-Datei möglicherweise noch nicht vorhanden ist, wenn das Skript ausgeführt wird, wird das Skript vorhanden sein
Warten Sie standardmäßig 60 Sekunden, bis die PID-Datei vorhanden ist und der Server gestartet wird.
Verwenden Sie diese Option, um ein anderes Zeitlimit anzugeben. Die Option -t gilt nur, wenn
mit -s oder --serverpid - sonst passiert nichts.
--serverpid=P
Wenn der Server, den Sie verfolgen möchten, bereits läuft, können Sie ihn hiermit angeben
Streit. Wenn die angegebene PID ungültig ist, wird das Skript abgebrochen.
-p|--plugin=/full/path/to/pluginname.py
Geben Sie ein zu verwendendes Plugin an. Das Plugin muss eine Python-Datei sein und die Endung haben .py. Sie
muss eine aufgerufene Funktion angeben Plugin und kann aufgerufene Funktionen angeben vor und
Post.
Pluginname.arg1=Wert ... Pluginname.argN=Wert
Sie können Argumente für Plugins in der Befehlszeile angeben. Wenn es ein Plugin gibt
angegeben als --plugin=/full/path/to/pluginname.py, die Argumente für dieses Plugin
sind angegeben als Pluginname.argname=Wert. Das Skript analysiert diese Argumente und
übergibt sie an das Plugin vor Funktion als Python-Dikt. WENN es mehr als eine gibt
Argument benannt Pluginname.argname Die Werte werden als Python-Liste übergeben.
DIRECTORY SERVER ANMERKUNG
Der Verzeichnisserver muss normalerweise so konfiguriert werden, dass er sich stattdessen bei der Named Pipe anmeldet
der üblichen Protokolldatei. Verwenden Sie beispielsweise das folgende LDIF, um dem Server mitzuteilen, dass er das verwenden soll
Datei access.pipe für das Zugriffsprotokoll:
dn: cn=config
Änderungstyp: ändern
ersetzen: nsslapd-accesslog-maxlogsperdir
nsslapd-accesslog-maxlogsperdir: 1
-
ersetzen: nsslapd-accesslog-logexpirationtime
nsslapd-accesslog-logexpirationtime: -1
-
ersetzen: nsslapd-accesslog-logrotationtime
nsslapd-accesslog-logrotationtime: -1
-
ersetzen: nsslapd-accesslog
nsslapd-accesslog: /var/log/dirsrv/slapd-localhost/access.pipe
-
ersetzen: nsslapd-accesslog-logbuffering
nsslapd-accesslog-logbuffering: aus
HINWEIS: Bevor Sie dies tun, sollten Sie Ihre aktuelle Konfiguration speichern, damit Sie sie wiederherstellen können
später.
ldapsearch ... -s base -b "cn=config" nsslapd-accesslog-maxlogsperdir nsslapd-accesslog-
logexpirationtime nsslapd-accesslog-logrotationtime nsslapd-accesslog nsslapd-accesslog
> gespeichertaccesslog.ldif
Das Fehlerprotokoll und das Überwachungsprotokoll haben ähnlich benannte Konfigurationsattribute, z. B. nsslapd-
Fehlerprotokoll, nsslapd-auditlog. Beachten Sie, dass das Audit-Protokoll standardmäßig deaktiviert ist – verwenden Sie nsslapd-
auditlog-logging-enabled: on, um es zu aktivieren.
Nutzen Sie ds-logpipe online über die Dienste von onworks.net