Logging

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Als Logging bezeichnet man in der Informatik die automatische Erstellung eines Protokolls (englisch: log) von Softwareprozessen.

Logging dient für die Aufzeichnung und Nachvollziehbarkeit von Fehlerzuständen des Softwareprozesses. Da eine Auswertung durch Administratoren und Softwareentwickler vorgesehen ist und der Inhalt gesetzlichen Einschränkungen unterliegt, darf keine vertrauliche Information enthalten sein. Zudem sollte die Softwareanwendung auch dann störungsfrei weiterarbeiten können, wenn das Logging fehlschlägt.

Die Aufzeichnung kann hierbei beispielsweise auf der Kommandozeile, in einer Datei, dem Ereignisprotokoll unter Windows bzw. syslogd[1] und klogd[2] unter Linux, einer spezialisierten Datenbank oder einem Webservice erfolgen. Im Server-Umfeld ist insbesondere die Aufzeichnung in einer Logdatei üblich. Diese können mittels eines Log-Scrapers[3] gesammelt und zentral ausgewertet werden. Bei verteilten, sowie mobil genutzten, Anwendungen ist es hingegen üblich, ein zentrales Webservice anzusprechen.

Moderne Logging-Frameworks unterstützen zudem die Aufzeichnung in mehreren Zielen (englisch: sinks) gleichzeitig. Zudem unterstützen einige Logging-Frameworks optional auch das Auditing, indem Schreibgarantien getätigt werden.

Abgrenzung[Bearbeiten | Quelltext bearbeiten]

Auditing
Dient für sicherheitskritische Informationen, etwa An- und Abmeldungen von Benutzern, Rechteausweitungen, sowie den Zugriff auf und Änderungen an sensiblen Daten.
Monitoring[4]
Dient der Analyse des Anwendungsverhaltens, insbesondere der Performance, in Echtzeit. (z. B. Performance Counters und collectd (system statistics collection daemon) unter Linux)
Tracing
Dient der Nachvollziehbarkeit des Programmflusses. Da hier sehr viele Informationen in kurzer Zeit aufgezeichnet werden, eignet sich Tracing nicht für die dauerhafte Aufzeichnung in einer Datei oder Datenbank, sondern dient der Beobachtung des Prozesses in Echtzeit. (z. B. Event Tracing for Windows (ETW) unter Windows)
Operations-Monitoring[4]
Dient für die Analyse von anwendungsübergreifenden Geschäftsprozessen.

Siehe auch[Bearbeiten | Quelltext bearbeiten]

Quellenangaben[Bearbeiten | Quelltext bearbeiten]

  1. syslogd Daemon. In: IBM Knowledge Center. Abgerufen am 2. Mai 2017 (englisch).
  2. M. Jones: Kernel logging: APIs and implementation. 30. Oktober 2010, abgerufen am 2. Mai 2017 (englisch).
  3. Logstash. Centralize, Transform & Stash Your Data. elastic, abgerufen am 2. Mai 2017 (englisch).
  4. a b Michael T. Nygard: Release It! Design and Deploy Production-Ready Software. O'Reilly, 2007, ISBN 978-0-9787392-1-8 (englisch, 326 S.).