This commit is contained in:
2024-04-25 22:05:17 +02:00
parent 44468ae920
commit 6c48b43a20
41 changed files with 2276 additions and 2515 deletions

View File

@@ -10,11 +10,11 @@ using EonaCat.Web.Tracer.Extensions;
var builder = WebApplication.CreateBuilder(args);
// Add services to the container.
FileLoggerOptions options = new FileLoggerOptions();
var options = new FileLoggerOptions();
options.MaxRolloverFiles = 5;
options.FileSizeLimit = 1 * 1024 * 1024 / 4;
options.UseLocalTime = true;
builder.Logging.AddEonaCatFileLogger(fileLoggerOptions: options, filenamePrefix:"web");
builder.Logging.AddEonaCatFileLogger(fileLoggerOptions: options, filenamePrefix: "web");
builder.Services.AddRazorPages();
@@ -35,6 +35,7 @@ rateOptions.AddDefaultConfiguration(config =>
);
RateLimiterMiddleware.OnLimitResponseCreated += RateLimiterMiddlewareOnLimitResponseCreatedAsync;
async void RateLimiterMiddlewareOnLimitResponseCreatedAsync(object? sender, HttpContext httpContext)
{
await httpContext.Response.WriteAsync(" THIS IS MY CUSTOM RATE LIMIT MESSAGE").ConfigureAwait(false);
@@ -61,7 +62,7 @@ builder.Services.AddMemoryCache();
var app = builder.Build();
Logger.UseLocalTime = true;
Logger.MaxLogType = ELogType.TRACE;
Logger.MinLogType = ELogType.TRACE;
Logger.Configure();
// Configure the HTTP request pipeline.
@@ -83,6 +84,7 @@ if (!app.Environment.IsDevelopment())
// await httpContext.Response.WriteAsync("THIS IS MY CUSTOM RATE LIMIT MESSAGE");
//}
WebTracer.OnLog += WebTracer_OnLog;
void WebTracer_OnLog(object? sender, string e)
{
Console.WriteLine(e);
@@ -103,10 +105,10 @@ void RunLoggingExceptionTests()
var loggerSettings = new LoggerSettings();
loggerSettings.FileLoggerOptions.UseLocalTime = true;
loggerSettings.UseLocalTime = true;
loggerSettings.MaxLogType = ELogType.TRACE;
loggerSettings.MinLogType = ELogType.INFO;
var logger = new LogManager(loggerSettings);
for (int i = 0; i < 10; i++)
for (var i = 0; i < 10; i++)
{
try
{
@@ -117,19 +119,20 @@ void RunLoggingExceptionTests()
logger.Write(exception);
Console.WriteLine($"Normal ExceptionLogged: {i}");
}
Task.Delay(1);
}
}
Task.Run(RunWebLoggerTests);
Task.Run(RunWebLoggingTests);
//Task.Run(RunWebLoggerTests);
//Task.Run(RunWebLoggingTests);
Task.Run(RunLoggingTests);
Task.Run(RunLoggingExceptionTests);
Task.Run(RunWebLoggingExceptionTests);
//Task.Run(RunLoggingExceptionTests);
//Task.Run(RunWebLoggingExceptionTests);
void RunWebLoggingExceptionTests()
{
for (int i = 0; i < 10; i++)
for (var i = 0; i < 10; i++)
{
try
{
@@ -145,18 +148,16 @@ void RunWebLoggingExceptionTests()
app.Logger.LogInformation(exception, "INFORMATION");
Console.WriteLine($"WebExceptionLogged: {i}");
}
Task.Delay(1);
}
}
void RunWebLoggingTests()
{
if (!Directory.Exists(Logger.LogFolder))
{
Directory.CreateDirectory(Logger.LogFolder);
}
if (!Directory.Exists(Logger.LogFolder)) Directory.CreateDirectory(Logger.LogFolder);
for (int i = 0; i < 9000000; i++)
for (var i = 0; i < 9000000; i++)
{
app.Logger.LogInformation($"web-test {i}");
File.AppendAllText(Path.Combine(Logger.LogFolder, "test.log"), $"WebLogged: {i}{Environment.NewLine}");
@@ -170,15 +171,15 @@ void RunLoggingTests()
var loggerSettings = new LoggerSettings();
loggerSettings.UseLocalTime = true;
loggerSettings.FileLoggerOptions.UseLocalTime = true;
loggerSettings.MaxLogType = ELogType.TRACE;
loggerSettings.MinLogType = ELogType.INFO;
loggerSettings.FileLoggerOptions.FileSizeLimit = 1024 * 1024 * 1;
loggerSettings.FileLoggerOptions.FileNamePrefix = "AllTypes";
loggerSettings.FileLoggerOptions.MaxRolloverFiles = 5;
var logger = new LogManager(loggerSettings);
for (int i = 0; i < 9000000; i++)
for (var i = 0; i < 9000000; i++)
{
logger.Write($"test to file {i} INFO", ELogType.INFO);
logger.Write($"test to file {i} INFO");
logger.Write($"test to file {i} CRITICAL", ELogType.CRITICAL);
logger.Write($"test to file {i} DEBUG", ELogType.DEBUG);
logger.Write($"test to file {i} ERROR", ELogType.ERROR);
@@ -193,9 +194,9 @@ void RunLoggingTests()
void RunWebLoggerTests()
{
for (int i = 0; i < 9000000; i++)
for (var i = 0; i < 9000000; i++)
{
Logger.Log($"test via logger {i} INFO", ELogType.INFO);
Logger.Log($"test via logger {i} INFO");
Logger.Log($"test via logger {i} CRITICAL", ELogType.CRITICAL);
Logger.Log($"test via logger {i} DEBUG", ELogType.DEBUG);
Logger.Log($"test via logger {i} ERROR", ELogType.ERROR);
@@ -208,4 +209,4 @@ void RunWebLoggerTests()
}
}
app.Run();
app.Run();