Graylog: Verwendung mit Dot NET
Wie Sie Logs von .NET/Serilog an Graylog senden
👋 Willkommen bei der Stackhero-Dokumentation!
Stackhero bietet eine einsatzbereite Graylog Cloud-Lösung, die zahlreiche Vorteile bietet, darunter:
- Unbegrenzter und dedizierter SMTP-E-Mail-Server inklusive.
- Mühelose Updates mit nur einem Klick.
- Anpassbarer Domainname gesichert mit HTTPS (zum Beispiel, https://logs.ihre-firma.com).
- Optimale Performance und robuste Sicherheit durch eine private und dedizierte VM.
Sparen Sie Zeit und vereinfachen Sie Ihr Leben: Es dauert nur 5 Minuten, um die Graylog Cloud Hosting-Lösung von Stackhero auszuprobieren!
Serilog ist eine beliebte und äußerst flexible Logging-Bibliothek, die häufig für das Log-Management in .NET-Anwendungen eingesetzt wird. Sie ermöglicht es Entwicklern, verschiedene Sinks für die Speicherung und Visualisierung von Logs zu konfigurieren.
Hier ein einfaches Beispiel für die Verwendung von Serilog:
var log = new LoggerConfiguration()
.WriteTo.Console()
.WriteTo.File("log.txt")
.CreateLogger();
log.Information("Hello, Serilog!");
Um Logs an einen Graylog-Server zu senden, können Sie das Paket serilog-sinks-graylog verwenden. Dieser Sink ermöglicht es, Logs im GELF-Format direkt an Graylog zu übertragen.
Schritt-für-Schritt-Anleitung
-
Paket installieren:
Fügen Sie das Paket
serilog-sinks-graylogzu Ihrem Projekt hinzu, indem Sie folgenden Befehl ausführen:Install-Package serilog.sinks.graylog -
Serilog für Graylog konfigurieren:
Ergänzen Sie die Konfiguration Ihrer Anwendung mit folgendem Codeausschnitt. Ersetzen Sie
<XXXXXX>.stackhero-network.comdurch die Domain Ihrer Graylog-Instanz:var loggerConfig = new LoggerConfiguration() .WriteTo.Graylog( new GraylogSinkOptions { HostnameOrAddress = "<XXXXXX>.stackhero-network.com", Port = 12201 } ); -
Graylog einrichten:
- Melden Sie sich an Ihrem
Graylog-Dashboard an. - Navigieren Sie zu System > Inputs.
- Erstellen Sie einen neuen Input vom Typ "GELF UDP".
- Klicken Sie auf "Launch new input". Aktivieren Sie im erscheinenden Dialog die Option "Global", vergeben Sie einen Namen für den Input und speichern Sie die Einstellungen ohne weitere Änderungen.
- Melden Sie sich an Ihrem
Zur Erhöhung der Sicherheit empfiehlt es sich, die IP-Adressen einzuschränken, die eine Verbindung zu Port 12201 herstellen dürfen. Diese Einstellung können Sie im Stackhero-Dashboard vornehmen, indem Sie Ihren Graylog-Service auswählen und unter "Firewall" nur bestimmte IPs zulassen.
Wenn Sie diese Schritte befolgen, kann Ihre .NET-Anwendung Logs sicher und effizient an Ihre Graylog-Instanz senden.