Gleeman.EffectiveLogger.MSSqlServer
2.0.2
There is a newer version of this package available.
See the version list below for details.
See the version list below for details.
dotnet add package Gleeman.EffectiveLogger.MSSqlServer --version 2.0.2
NuGet\Install-Package Gleeman.EffectiveLogger.MSSqlServer -Version 2.0.2
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Gleeman.EffectiveLogger.MSSqlServer" Version="2.0.2" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Gleeman.EffectiveLogger.MSSqlServer --version 2.0.2
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Gleeman.EffectiveLogger.MSSqlServer, 2.0.2"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Gleeman.EffectiveLogger.MSSqlServer as a Cake Addin #addin nuget:?package=Gleeman.EffectiveLogger.MSSqlServer&version=2.0.2 // Install Gleeman.EffectiveLogger.MSSqlServer as a Cake Tool #tool nuget:?package=Gleeman.EffectiveLogger.MSSqlServer&version=2.0.2
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Gleeman Effective Logger
dotnet
CLI
> dotnet add package Gleeman.EffectiveLogger --version 2.0.2
> dotnet add package Gleeman.EffectiveLogger.SQLite --version 2.0.1
> dotnet add package Gleeman.EffectiveLogger.MSSqlServer --version 2.0.1
> dotnet add package Gleeman.EffectiveLogger.PostgreSQL --version 2.0.1
How To Use?
appsettings.json
{
"LogOptions": {
"WriteToFile": true, // true or false
"WriteToDatabase": true, // true or false
// if WriteToFile is true, you should to write here 'FilePath' and 'FileName'
"FilePath": "",
"FileName": "",
"DatabaseOptions": {
// if WriteToDatabase is true, you should to write here 'connection string'
"SQLiteConnectionString": "",
"MSSqlServerConectionString": "",
"PostgreSqlConnectionString": "",
"MySqlConnectionString": ""
}
}
}
program.cs
Logging to SQLite
builder.Logging.ClearProviders();
builder.Services.AddEffectiveLogger(builder.Configuration)
.AddSQLiteLog(builder.Configuration, assembly: Assembly.GetExecutingAssembly());
Logging to MSSqlServer
builder.Logging.ClearProviders();
builder.Services.AddEffectiveLogger(builder.Configuration)
.AddMSSqlServerLog(builder.Configuration, assembly: Assembly.GetExecutingAssembly());
Logging to PostgreSql
builder.Logging.ClearProviders();
builder.Services.AddEffectiveLogger(builder.Configuration)
.AddPostgreSqlLog(builder.Configuration, assembly: Assembly.GetExecutingAssembly());
If you won't use a database for logging
builder.Logging.ClearProviders();
builder.Services.AddEffectiveLogger(builder.Configuration);
Middleware or Controller
Middleware
public class LoggingMiddleware : IMiddleware
{
private readonly IEffectiveLog<LoggingMiddleware> _log;
public LoggingMiddleware(IEffectiveLog<LoggingMiddleware> log)
{
_log = log;
}
public async Task InvokeAsync(HttpContext context, RequestDelegate next)
{
_log.Debug($"{context.Request.Method}");
try
{
_log.Information($"{context.Request.Method} {context.Response.StatusCode}");
await next.Invoke(context);
}
catch (Exception ex)
{
_log.Fail($"{context.Request.Method} - {ex.Message.ToString()}");
}
}
}
Controller
[Route("api/[controller]")]
[ApiController]
public class ValuesController : ControllerBase
{
private readonly IEffectiveLog<ValuesController> _log;
public ValuesController(IEffectiveLog<ValuesController> log)
{
_log = log;
}
[HttpGet]
public IActionResult Get()
{
_log.Information("Information");
_log.Debug("Debug");
var values = new List<string>()
{
"Value1",
"Value2",
"Value3",
"Value4",
};
_log.Fail("Fail");
_log.Warning("Warning");
return Ok(values);
}
}
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net7.0 is compatible. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net7.0
- Gleeman.EffectiveLogger (>= 2.0.2)
- Microsoft.EntityFrameworkCore.SqlServer (>= 7.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.