0

我正在使用 log4net 来满足我们的应用程序日志记录需求。该应用程序基于 .NET 3.5 构建。这个应用程序是一个数据驱动的引擎,它评估数据变化的某些计算。例如,当 x 或 y 发生变化时,将评估诸如 x/y 之类的简单计算。如果 y 为零并且 x 以每秒 1000 的速率不断变化,我们每秒记录 1000 条错误消息。

因此,我需要一种方法来仅记录一次消息或以较低的频率(例如每分钟一次)记录消息。

public class MessageDetails
{
   public string Message { get; set; }
   public DateTime TimeStamp { get; set; }
}

我正在考虑使用 HashSet<MessageDetails>来存储记录的消息及其时间戳。为简单起见,我们不必担心这个 HashSet 的大小。在记录新消息之前,我可以检查之前是否记录了此消息。然后我可以决定是否记录此消息。

这是实现我想要实现的目标的好方法吗?你们有什么替代方法或改进建议吗?

4

0 回答 0