Skip to main content
FHEDEEN
Request information material

Bachelor Flyer Master Flyer

Contact

Sekretariat Angewandte Informatik
Tel.: 0361 / 6700-5510 sekretariat-ai@fh-erfurt.de

Besucheranschrift:

Fachhochschule Erfurt
Fakultät Gebäudetechnik und Informatik
Fachrichtung Angewandte Informatik
Altonaer Straße 25
99085 Erfurt

Vergleich verschiedene Semantik Logging Umgebungen in Bezug auf die .NET Plattform

Die vorliegende Arbeit beschäftigt sich mit der Untersuchung der verschiedenen vorhandenen Technologien, die eine Semantik-Logging Umgebung für .NET Anwendungen bereitstellen. Es wird ein Vergleich von verschieden Aspekten sowohl für die Logging-Frameworks, die die Log-Einträge generieren, als auch für die Log-Server, die die generierten Einträge sammeln, klassifizieren und visualisieren. Die zu untersuchenden Logging-Frameworks sind NLog und Serilog. Die zu untersuchenden Log-Server sind Seq, Graylog und das Elastic Stack.

Das Hauptziel dieser Arbeit ist die Festlegung der heutzutage besten Technologien für die Implementierung einer Anwendung und einer Umgebung, die zusammen ein ganzzeitiges Semantik Logging Konzept abbilden.

Um das Ziel zu erreichen, sind zwei Methoden ausgeführt worden.

Die erste Methode war eine theoretische Analyse verschiedenen Aspekten der Frameworks und der Server. Aspekten sowie Beliebtheit, Performance, Unterstützung, Dokumentation, Konfigurierbarkeit, u.a. wurden zwischen die verschiedenen Technologien verglichen.

Die zweite Methode war die Entwicklung zwei Kommandozeilenanwendungen. Beide Anwendungen unterschieden sie sich nur an das benutzte Logging-Framework. Eine wurde mit NLog und die andere mit Serilog implementiert. Beide Anwendungen hatten die gleiche zwei Zwecke. Zu einem sollten sie als Beispiel für künftige Projekten dienen, die Semantik-Logging integrieren wollen. Zu anderem wurden manuellen Test in den fertigen Anwendungen ausgeführt, die kräftigere Aussagen über die Performance der Frameworks treffen.

Aus beide Methoden sind die Schlussfolgerungen entstanden, dass das heutzutage beste Logging-Framework für .NET-Anwendungen mit Sicht auf Semantik-Logging Serilog ist und dass die Log-Server-Wahl sehr stark von den projektspezifischen Bedürfnissen abhängt. Folgende allgemeine Aussage über die untersuchten Log-Server sind getroffen worden: In Entwicklungsumgebungen, in denen Skalierbarkeit nicht in Vordergrund steht, ist Seq zu bevorzugen. In Produktionsumgebungen ist das Elastic Stack aufgrund der höheren Modularität, guten Performance und hervorragenden Skalierbarkeit die richtige Wahl.

This thesis investigates the various existing technologies for creating semantic logging environments for.NET applications. A comparison will be made between the logging frameworks that generate the log entries and the log servers that collect, classify, and visualize the generated entries. NLog and Serilog are the logging frameworks that will be considered. Seq, Graylog, and the Elastic Stack are among the log servers that will be considered.

The primary goal of this thesis is to identify the best technologies available today for the implementation of an application in conjunction with an environment that represents a complete Sematic Logging concept.

Two methods have been used to achieve the goal.

The first method involved conducting a theoretical analysis of various aspects of the frameworks and servers. Popularity, performance, support, documentation, configurability, and other factors were compared between the various technologies.

The second approach was to create two command line applications. The only difference between the two applications is the logging framework used. The first was done with NLog, and the second with Serilog. Both applications served the same two functions. On the one hand, they should serve as a model for future projects wishing to incorporate semantic logging. On the other hand, it was necessary to be able to run manual tests in finished applications in order to present statements about the frameworks' performance.

Both methods led to the conclusion that Serilog is the best logging framework for.NET applications today in terms of semantic logging, and that the choice of log server is heavily dependent on project-specific requirements. The following general statement can be made about the log servers under consideration: Seq should be used in development environments where scalability is not a concern. Because of its higher modularity, good performance, and excellent scalability, the Elastic Stack is the best choice for production environments.

Back