Làm được gì với Serilog?

Serilog là một thư viện ghi log cực kỳ mạnh mẽ, linh hoạt, dễ cài đặt và tương thích với nhiều nền tảng khác nhau.


Nuget
https://www.nuget.org/profiles/serilog

Serilog core package (Chứa các class của thư viện)
https://www.nuget.org/packages/Serilog

Github
https://github.com/serilog

Chúng ta có thể cấu hình Serilog ghi ra file, hiển thị ra console, debug, lưu vào database, ...

Khi làm việc thì ta cần cấu hình Sinks để Serilog biết ghi log xuống đâu. Tùy vào mục đích của ta mà có thể kết hợp các Sinks khác nhau. Chẳng hạn

Ghi log ra màn hình Debug trong Visual Studio
https://www.nuget.org/packages/Serilog.Sinks.Debug

Ghi log ra màn hình CMD Terminal khi chạy ứng dụng bằng dòng lệnh
https://www.nuget.org/packages/Serilog.Sinks.Console

Ghi log ra và lưu xuống file
https://www.nuget.org/packages/Serilog.Sinks.File

Cấu hình Serliog kết hợp với ASP .NET Core project
https://www.nuget.org/packages/Serilog.AspNetCore

Ghi log lên server Seq
https://www.nuget.org/packages/Serilog.Sinks.Seq

Ghi log lên server HTTP (Logstash, ...)
https://www.nuget.org/packages/Serilog.Sinks.Http/

Ghi log lên server GrayLog
https://www.nuget.org/packages/Serilog.Sinks.Graylog

Ghi log lên server Splunk
https://www.nuget.org/packages/Serilog.Sinks.Splunk

Ghi và lưu log xuống SQL Server
https://www.nuget.org/packages/Serilog.Sinks.MSSqlServer

Ghi và lưu log xuống MongoDB
https://www.nuget.org/packages/Serilog.Sinks.MongoDB

Ghi và lưu log xuống Azure Table Storage
https://www.nuget.org/packages/Serilog.Sinks.AzureTableStorage

Ghi log vào Server https://elmah.io
https://www.nuget.org/packages/Serilog.Sinks.ElmahIO

Ghi log vào Server https://www.datadoghq.com
https://www.nuget.org/packages/serilog.sinks.datadog

Ghi log vào Azure ApplicationInsights
https://www.nuget.org/packages/Serilog.Sinks.ApplicationInsights/

Ghi log vào ElasticSearch
https://www.nuget.org/packages/Serilog.Sinks.ElasticSearch

Ghi log vào SignalR connection
https://www.nuget.org/packages/Serilog.Sinks.SignalR/

Ghi log và gửi thông qua email
https://www.nuget.org/packages/serilog.sinks.email

Ghi log và lưu vào Ravendb
https://www.nuget.org/packages/serilog.sinks.ravendb

Ngoài ra còn rất nhiều Sinks khác hỗ trợ Serilog

Dưới đây là ví dụ đơn giản sử dụng Serilog

1. Tạo mới một ứng dụng Console Application project
dotnet new console -o SerilogTest
cd SerilogTest

2. Cài đặt core Serilog package và các Sinks package (Ở đây ghi log ra màn hình console và file)
dotnet add package Serilog
dotnet add package Serilog.Sinks.Console
dotnet add package Serilog.Sinks.File

3. Chỉnh sửa Program.cs dùng các hàm của Serilog. Tham khảo file dưới đây


4. Chạy chương trình
dotnet run


Các bạn tham khảo code mẫu ở đây.
Tiếp tục cập nhật ...

Post a Comment

0 Comments