2

我想为在 WM6 Pro 上运行的 cf.net 应用程序添加一些日志记录功能。我正在研究记录异常和一些更敏感的代码部分。我希望将日志存储在本地(即设备上),并将它们可靠地上传到服务器(它们需要排队,我的应用程序偶尔会连接)。

有谁知道 log4net 是否可行,或者我是否必须编写自己的日志系统?有没有人有任何指示?

4

3 回答 3

4

如果为此使用 log4net,请勿使用 UDP appender 选项登录到远程服务器。如果 WM 设备通过 ActiveSync 连接到 PC 并通过 PC 访问网络,则尝试使用 UDP 将导致 ActiveSync 崩溃,需要重新启动 PC 和软重置 WM 设备。由于这个原因,我的演示出现了严重错误(我们失去了一份巨额合同)。

log4net 在其他环境中可能很棒,但我发现它是一个 PITA,在 Windows Mobile 中不值得麻烦。您最好编写自己的简单 Logger 类,该类使用 TextWriter 将信息转储到文本文件(用于本地日志记录)或调用远程服务器上的 web 服务函数。您可以完全控制在哪里写入什么内容,并且您不需要任何 Chainsaw 废话来阅读您的日志。

于 2009-01-06T20:44:54.593 回答
0

有可能做到这一点。只需编写自定义附加程序来检查服务器是否可用,如果不可用,则将数据存储在 sqlite 中。

http://karlagius.wordpress.com/2008/01/02/writing-a-custom-appender-for-log4net/

于 2009-01-06T19:43:59.443 回答
0

SQL CE(精简版)支持复制。您可以在本地存储异常,然后在连接时将本地数据存储与中央服务器同步。这里有一些细节。

于 2009-01-06T20:24:03.370 回答