65.9K
CodeProject 正在变化。 阅读更多。
Home

.NET 文件日志库

starIconstarIcon
emptyStarIcon
starIcon
emptyStarIconemptyStarIcon

2.33/5 (6投票s)

2008年4月5日

CPOL

1分钟阅读

viewsIcon

45105

downloadIcon

458

一个简单但实用的 .NET 文件日志库,使用 C# 实现。

引言

这是一个简单但实用的基于文件的日志库,以及一个示例客户端应用程序,演示了该库的用法。

背景

以下是此库的一些功能:

  • 允许按严重程度级别记录消息。该库当前支持 3 种严重程度级别,例如错误、警告和信息。
  • 提供环绕功能,在达到配置的最大大小时环绕日志文件。
  • 该库提供从异常中恢复的功能。它基本上尝试关闭当前日志文件并重新打开一个新文件一次。
  • 该库是线程安全的。

这个库更像是一个启动工具包,其中包含所有基本功能。请随时根据您的需要自定义它。

使用代码

库的使用非常简单。首先需要使用 Initialize 方法初始化对象。 这就是指定日志文件名和位置的地方。 可选地,也可以指定最大日志文件大小。 默认最大日志文件大小为 20 MB。 当达到配置的最大大小时,日志文件将自动截断。

CLogger TestLogger = new CLogger();
TestLogger.Initialize("C:", "Test.Log"); // Location and file name
// TestLogger.Initialize("C:", "Test.Log", 20); // Optional max log size param in MB 

立即开始记录信息。 每个严重程度级别都有 3 个重载。

  • 用于记录消息字符串的重载
  • 用于记录错误代码和消息字符串的重载
  • 用于记录类名、方法名和消息字符串的重载
TestLogger.LogInformation("My First Test Log Message");
TestLogger.LogWarning("My First Test Log Message");
TestLogger.LogError("My First Test Log Message");
TestLogger.LogInformation(1005, "My First Test Log Message");
TestLogger.LogInformation("LogClient", "TestLog", "My First Test Log Message");
         

最后,这是记录语句的样子:

[2008/5/4 上午 1:36:29],[1],[信息],LogClient:TestLog:我的第一个测试日志消息
[2008/5/4 上午 1:36:29],[1],[警告],LogClient:TestLog:我的第一个测试日志消息
[2008/5/4 上午 1:36:29],[1],[错误],LogClient:TestLog:我的第一个测试日志消息

每个语句都包含日期时间戳、线程 ID、严重程度和消息字符串。

使用 Terminate 语句终止日志记录器库。

TestLogger.Terminate();  

祝您日志记录愉快。 随时欢迎提出任何建议和批评。

历史

库版本 1.0 - 2008 年 4 月 5 日

© . All rights reserved.