2009-01-06 88 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