打印

[asp.net教程] 用asp.net将网页错误信息写入系统日志(2)

用asp.net将网页错误信息写入系统日志(2)

body>
  <h1>403 error page</h1>
  </body>
  </html>
  设置以上页面以后,最重要的,我们需要设置全局配置文件global.asax,这样错误信息才可以保存到系统日志,我们来看这个文件怎样设置。
  <%@ import namespace="system" %>
  <%@ import namespace="system.diagnostics" %>
  <script language="vb" runat=server>
   
  public sub application_onerror(sender as object, e as eventargs)
  '捕捉错误
  dim lasterror as exception = server.getlasterror()
  dim errmessage as string = lasterror.tostring()
   
  '这里设置日志的名字为“mylog”
  dim logname as string = "mylog"
  dim message as string = "url " & request.path & " error: " & errmessage
   
  ' 如果日志不存在,建立一个
  if (not eventlog.sourceexists(logname)) then
  eventlog.createeventsource(logname, logname)
  end if
   
  dim log as new eventlog
  log.source = logname
   
  '以下列出了五中错误
  log.writeentry(message, eventlogentrytype.information, 1)
  ' log.writeentry(message, eventlogentrytype.error, 2)
  ' log.writeentry(message, eventlogentrytype.warning, 3)
  ' log.writeentry(message, eventlogentrytype.successaudit, 4)
  ' log.writeentry(message, eventlogentrytype.failureaudit, 5)
  end sub
  </script>
  在以上设置中,定义了当错误发生的时候,web服务器将首先检查是否存在名为“mylog”的日志,如果不存在,建立一个。然后,将错误信息写入日志并保存。在以上的设置中,我们注意以下几点:(1)以上代码中,我们将日志命名为“mylog”,在实际应用中,我们可以根据自己的要求设置日志名字,比如 “××的网站日志”等,这样不但容易辨别,而且也不会被其他管理员认错为别的内容;(2)以上我们给出的错误页面很简单,就是一个简单语句。在实际网站应用中,我们可以有几个选择,首先,我们可以将所有这些错误页面设置为网站的首页,当页面出错或者页面不存在的时候,直接将用户引导到网站首页,这样不显示错误信息,对用户而言可能浏览感觉较好;另外,也可以设置将错误页面设置比较友好,最好是一般用户都可以理解方式而不是简单的英文提示。

  四、查看效果
  现在,我们打开“事件查看”来验证是否将事件写入日志。打开“程序”->“管理”->“事件查看器”,选择“mylog”,我们可以看到以下的界面(图一):
   
  在上图中,我们看到了mylog里面有几个事件,打开查看,我们可以看到错误信息确实意见记录下来(图二):
   
  五、总结
  以上,我们用完整的举例详细介绍了错误信息写入系统日志的实现方法。这样实现以后,相信对系统管理和网站管理都可以起到很好的帮助作用。同时,在实用asp.net的过程中,我们不得不一次次惊叹它功能的完善,asp.net不但的页面设计、数据库访问、缓存等方面功能和性能大大提高,而且,在与系统的结合、整个环境的管理等方面也进一步完善。所以,对于习惯asp或者php等其他语言编程的用户,在使用asp.net以后,不能只仅仅关注页面实现和数据处理等常规操作,而应该进一步在网站安全、系统管理等方面学习asp.net,真正在网络开发方面达到一个更高的境界。

TOP

返回顶部
AYBlue

Processed in 0.057382 second(s), 7 queries.

当前时区 GMT+8, 现在时间是 2009-1-10 11:46 京ICP备06054220号

清除 Cookies - 联系我们 - 163K.com - Archiver - WAP