将应用程序的状态记录到控制台窗口

时间:2008-11-13 04:29:11

标签: vb.net console

我目前正在重构一个将其状态打印到控制台窗口的应用程序。目前我正在做这样的事情:

 Console.Write("Print some status.....")
 //some code 
 Console.WriteLine("Done!")

现在虽然这很好用,但所有逻辑都隐藏在console.writelines之间,而且我发现它很难阅读。

我不知道是否有更好的方法可以做到这一点,但我只是想问一下是否有人在控制台上提出了更好/更清晰的打印应用程序状态。

有什么想法吗?

3 个答案:

答案 0 :(得分:3)

看看Log4Net,它可以处理所有内容,但可能对您的应用程序来说太过分了,不知道。然而,知道Log4Net可能会帮助你在某一天上路,所以也许这也是一个很好的机会。

答案 1 :(得分:1)

我第二次使用Log4Net。在不调用困难部分的情况下使用它非常简单 - 只需执行以下操作: 在您的应用程序Main()方法中,调用

log4net.Config.BasicConfigurator.Configure(new log4net.Appender.ConsoleAppender());

设置一个基本的控制台记录器,将所有消息记录到stdout。

在需要记录的类中,创建一个新的ILog,如下所示:

private static readonly log4net.ILog log = log4net.LogManager.GetLogger(typeof (MyClass));

然后在需要记录的方法中,调用

log.Debug("Print Some status ...");

完成所有这些设置和工作后。查看Log4Net文档,了解如何设置更有用的日志记录。您可以执行许多不同类型的日志记录,而无需更改代码中的日志记录调用。

答案 2 :(得分:0)

为什么不使用将错误写入文本文件的Logger对象?您可能会遇到一些“优先级”错误消息,例如:Logger.print(新优先级(“重要”),“blabla”); 这样,您就可以在文件中找到确切的时间和所需的所有消息。

如果您非常想要控制台,您可以在控制台上使用优先级..因此它只会打印您告诉记录器打印的内容,例如网络错误等。