我在C#/ .NET中编写了一个Windows服务,但到目前为止还没有启动。在OnStart
方法中抛出了一个删除。
由于我还没有找到有关未处理的异常Windows事件日志的任何信息(除了一个不太有帮助的P4: System.Data
),我正在寻找另一种简单的方法来获取堆栈跟踪和异常消息。
我知道,我可以尝试debug Windows服务,但由于它在timeout下运行的OnStart
方法失败,调试并不好玩。此外,它需要以管理员身份启动VS。
或者我应该在try-catch中包装所有内容并在某处记录异常?如果是这样,在哪里?什么是最佳做法?
答案 0 :(得分:2)
将代码的所有关键部分包装在单独的try / catch块中,将日志写入Windows事件日志,安装全局异常处理程序。将这些异常写入Windows事件日志。
即使它没有崩溃,你也应该在服务中完成所有这些。