• RFID会议签到系统总结(四) 异常处理与日志记录


     

    这一篇还没准备进入实质性的阶段,先插段事关整个系统的异常处理部分。

    最基本的原则当然是所有有可能影响到系统正常运行的异常都要Catch,并作记录,所谓最基本的原则当然只能是到具体实现的阶段把握了。但总有百密一疏,挂万漏一的时候,对于这些漏网之鱼必须在Application.ThreadExceptionAppDomain.CurrentDomain.UnhandledException事件中根据情况处理掉。

    对于已经冒到上述二个事件中的异常,不但要作记录,还要出个Error形式的对话框提醒之,否则出状况了也不知道。至于是否要关闭整个应用程序则原则上不予理睬。只有一种情况,就是UnhandledException中的事件参数IsTerminatingTrue时,必须要关闭应用程序了,籍此可以在ApplicationExit事件中及时的清理掉一些资源。

    当然异常处理是个很大的话题,甚至有些地方是特意要抛个异常的,这些东西要具体事情具体分析,这里只是提一下系统中一些大体的做法。

     

    日志记录也是一个很重要的部分,要记录的东西包括上面提到的一些程序异常状况,网络出现异常的状况,系统启动与退出,一些重要操作。还有就是大量的接收到的通讯指令,大量的从RFID硬件设备读出的信息。系统一直很稳稳当当的运行,这些东西用途不大,但一旦系统有状况,这些记录将是解决问题、排除故障的依据。

    从各方面考虑,日志记录决定用log4net,现在要思量的只是具体如何配置它而已。最后决定系统中用二个appenderEventLogAppender用于记录异常信息,包括程序与网络异常,这种信息一般不会很多,而且记录在EventLog个人认为比较的醒目,程序异常一般定义为“ERROR”级别,只有在ThreadException UnhandledException 事件中出现的才定义为“FATAL”,而网络异常则用“WARN”。另一个appenderRollingLogFileAppender,用于记录操作信息,通讯信息和硬件信息,这种记录记录量会比较的大,一个小时产生一个日志文件是必要的,这种记录都定义为“INFO”级别。

  • 相关阅读:
    C# 2010 从入门到精通 学习笔记3 第4章 使用决策语句
    C# 2010 从入门到精通 学习笔记2 第3章 方法和作用域
    C# 2010 从入门到精通 学习笔记1 第2章 使用变量、操作符和表达式
    SharePoint 2010 添加“我的链接”菜单
    SharePoint Survey WebPart 调查 Web部件
    SharePoint World Clock 世界时钟
    SharePoint Silverlight Clock 时钟
    SharePoint 文档导入工具
    如何在SharePoint2010中添加Deep Zoom Image
    计算并发和qps:
  • 原文地址:https://www.cnblogs.com/lichdr/p/775191.html
Copyright © 2020-2023  润新知