2009-01-06 86 views
2

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

有谁知道这是否可能与log4net或我将不得不写我自己的日志记录系统?有没有人有任何指针?

回答

4

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

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

0

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

+0

我会避免这种做法。写入SQL CE数据库比写入文本文件更可能失败,并且(尽管MS不会公布此信息),但在复制过程中丢弃网络连接时,SQL CE复制并不可靠(这种情况在移动设备中会发生很多)。 – MusiGenesis 2009-01-06 20:48:57

+0

感谢您输入Dave,但我同意MusiGenesis。这是SQLCE和SQLCE复制问题,我主要感兴趣的是日志:) – 2009-01-07 13:03:56