Graylog: Verwendung mit Dot NET
Wie Sie Logs von .NET/Serilog an Graylog senden
👋 Willkommen in der Stackhero-Dokumentation
Stackhero bietet eine vollständig verwaltete Graylog Cloud-Lösung, die auf Geschwindigkeit und Einfachheit ausgelegt ist. Sie können:
- Auf einen unbegrenzten, dedizierten SMTP-E-Mail-Server vertrauen, der in Ihrem Service enthalten ist.
- Updates mühelos per Klick anwenden – ganz ohne manuellen Aufwand.
- Einen individuellen Domainnamen nutzen, der durch HTTPS gesichert ist (zum Beispiel https://logs.your-company.com), sodass Ihr Team sicheren und direkten Zugriff erhält.
- Von hoher Performance und Sicherheit auf einer privaten, dedizierten Infrastruktur profitieren – ohne geteilte Ressourcen oder störende Nachbarn.
Konzentrieren Sie sich auf Ihre Daten, nicht auf das Tooling: Mit Stackheros Graylog Cloud Hosting können Sie in nur wenigen Minuten starten.
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.