C# 两个 类 一个 serilog 文件
C# two classes one serilog file
我有一个问题我有两个 类,我想将两个 类 写入 Serilog 文件。
class Program
{
static void Main(string[] args)
{
Log.Logger = new LoggerConfiguration()
.WriteTo.RollingFile(logs\log.txt)
.CreateLogger();
Log.Information("TEST");
}
}
public class data: IData
{
Log.Logger = new LoggerConfiguration()
.WriteTo.RollingFile(logs\log.txt)
.CreateLogger();
Log.Information("_________________________________________________");
Log.Information("I'm right now in the Class", DateTime.Now);
}
如果我要写这个,我会创建两个日志对象和日志信息,将写入不同的文件。
所以我的问题是如何只创建一个我可以在两者中使用的日志对象 类 并且日志信息只写入一个文件。
不需要创建新的日志文件。此日志文件已存在,您可以附加它。
我的 .net 应用程序也遇到了同样的问题。我的解决方案是创建一个带有私有静态记录器的 class。它看起来像这样:
public class ErrorLogRepository
{
private static Logger _logger;
public ErrorLogRepository()
{
if(_logger == null)
{
_logger = new LoggerConfiguration()
.WriteTo.RollingFile(logs\log.txt)
.CreateLogger();
}
}
public void Log()
{
Log.Information("I'm right now in the Class", DateTime.Now);
}
}
有了这个class,每次创建它的实例时,构造函数都会验证之前是否创建了 Logger。这样,您将始终对不同的 classe 使用相同的 Logger,并且您将始终写入同一个文件。
我有一个问题我有两个 类,我想将两个 类 写入 Serilog 文件。
class Program
{
static void Main(string[] args)
{
Log.Logger = new LoggerConfiguration()
.WriteTo.RollingFile(logs\log.txt)
.CreateLogger();
Log.Information("TEST");
}
}
public class data: IData
{
Log.Logger = new LoggerConfiguration()
.WriteTo.RollingFile(logs\log.txt)
.CreateLogger();
Log.Information("_________________________________________________");
Log.Information("I'm right now in the Class", DateTime.Now);
}
如果我要写这个,我会创建两个日志对象和日志信息,将写入不同的文件。 所以我的问题是如何只创建一个我可以在两者中使用的日志对象 类 并且日志信息只写入一个文件。
不需要创建新的日志文件。此日志文件已存在,您可以附加它。
我的 .net 应用程序也遇到了同样的问题。我的解决方案是创建一个带有私有静态记录器的 class。它看起来像这样:
public class ErrorLogRepository
{
private static Logger _logger;
public ErrorLogRepository()
{
if(_logger == null)
{
_logger = new LoggerConfiguration()
.WriteTo.RollingFile(logs\log.txt)
.CreateLogger();
}
}
public void Log()
{
Log.Information("I'm right now in the Class", DateTime.Now);
}
}
有了这个class,每次创建它的实例时,构造函数都会验证之前是否创建了 Logger。这样,您将始终对不同的 classe 使用相同的 Logger,并且您将始终写入同一个文件。