Web项目Log4net没有日志输出

Web项目Log4net没有日志输出:现象是在应用程序第一次访问时就报错,返回了错误信息,但没有记录到日志文件中。如果在Application_BeginRequest或Application_Start先执行以下日志记录方法,则日志记录正常。其中,日志记录是在LogHelper.Log()公共方法中处理。
原因分析:
第一次访问报错:是在引用的DLL中进行日志的处理,虽然也是调用的公共方法,但是此时logger还没有初始化(log4net初始化找不到log4net.config,除非将log4net.config复制到bin目录下);而若是在Application_BeginRequest或Application_Start先行记录日志,则执行了日志初始化操作(默认读取Web.config同级目录下的log4net.config),而LogHelper.Log()采用单例模式,一个Web应用仅有一个logger,所以记录日志成功。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
简介基于浏览器端的console的日志记录组件。支持如下特性:日志级别设置;异常提交到服务器;提交环境信息;日志Tag过滤器;如何使用浏览器下的引用[removed][removed][removed]     log4web.log("houyhea");     log4web.error(new Error("houyhea"));[removed]requirejs下的引用require.config({     paths: {        "log4web": "path/to/log4web",     } }); define(["log4web"], function (log4web) {     log4ewb.log("houyhea");     log4web.error(new Error("houyhea")); });API说明config(config)对日志组件进行配置。如果不传参数,则返回当前日志组件的配置信息。 配置项主要有:debug是否开启调试模式。如果开启调试模式,则可以在console中输入window.log4web进行调试.默认值:0.level日志级别,error(4)、warn(3)、info(2)、log(1)、debug(0),级别越高,输出日志越少。比如:当前级别如果是warn,则只输出error、warn的日志.默认值:debug; 代码示例var Level = {        "error": 4,        "warn": 3,        "info": 2,        "log": 1,        "debug": 0     };tagFilter日志tag筛选,正则表达式字符串.使用者可以通过在console控制台通过log4web.config({tagFilter:"usersmodule"})配置值输出"usersmodule"tag的日志。默认值:"".log4web.config({tagFilter:"usersmodule"});post当发生异常是是否post到服务器。此处只有当msg参数是Error对象时,才判断是否有提交到服务器.默认值:0.postContextInfo是否提交环境数据.默认值:1postUrl异常信息提交的服务器地址.默认值:"/api/exception"。 代码示例:log4web.config({             debug: 0,             level: "debug",             tagFilter: "",             post: 0,             postContextInfo: 1,             postUrl: "/api/exception"         });这里单独说一下postData,主要包含如下信息:browser.浏览器描述信息。返回字符串,格式:" Chrome,39.0.2171.95",逗号前表示浏览器类型,逗号后表示浏览器版号.os.操作系统字符串。flash.返回字符串,格式:"1,15",逗号分隔,第一个表示是否安装flash,1:是,0:否。15:表示flash版本.referrer.document.referrer信息.url.当前页面的url.resolution.屏幕分辨率信息.返回格式:"1920*1080",(window.screen对象获取).name.异常名称。message.异常message。stack.异常调用堆栈字符串。log(msg,tag)msg日志消息。可以是字符串或Error对象。tag用于过滤器,可为空。 调用示例:log4web.log("log info.","usersmodule"); log4web.log("log info.");info(msg,tag)msg日志消息。可以是字符串或Error对象。tag用于过滤器,可为空。debug(msg,tag)msg日志消息。可以是字符串或Error对象。tag用于过滤器,可为空。warn(msg,tag)msg日志消息。可以是字符串或Error对象。tag用于过滤器,可为空。error(msg,tag)msg日志消息。可以是字符串或Error对象。tag用于过滤器,可为空。测试用例参见。浏览器兼容性兼容IE8 ,chrome,firefox。依赖需要依赖jquery库,post数据用到了jquery.post方法。如果不想依赖jquery,可自行修改相关代码。 标签:log4web

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值