Yu-Core / Serilog-Sinks-SQLite-Maui

A Serilog sink that writes to SQLite

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Serilog.Sinks.SQLite.Maui

The fork of Serilog.Sinks.SQLite

Referring to this issue saleem-mirza#24 (comment)

It can run normally in Maui(.NET 7)

I made the following changes

  • Replace SQLite with SQLiteNetPcl
  • Replace Newtonsoft.Json with System.Text.Json
  • add program annotation in LoggerConfigurationSQLiteExtensions.cs. Because there will be an exception where the reference object instance is null in Maui's Android.
//if (!sqliteDbPathUri.IsAbsoluteUri) {
//    var basePath = System.Reflection.Assembly.GetEntryAssembly().Location;
//    sqliteDbPath = Path.Combine(Path.GetDirectoryName(basePath) ?? throw new NullReferenceException(), sqliteDbPath);
//}

Getting started

Install Serilog.Sinks.SQLite.Maui from NuGet

Install-Package Serilog.Sinks.SQLite.Maui

Configure logger by calling WriteTo.SQLite()

var logger = new LoggerConfiguration()
    .WriteTo.SQLite(@"Logs\log.db")
    .CreateLogger();
    
logger.Information("This informational message will be written to SQLite database");

About

A Serilog sink that writes to SQLite

License:Apache License 2.0


Languages

Language:C# 100.0%