log edit

/// <summary>
    /// 使用LOG4NET记录日志的功能,在WEB.CONFIG里要配置相应的节点
    /// </summary>
    public class LogHelper
    {
        //log4net日志专用
        public static readonly log4net.ILog loginfo = log4net.LogManager.GetLogger("loginfo");
        public static readonly log4net.ILog logerror = log4net.LogManager.GetLogger("logerror");

        public static void SetConfig()
        {
            log4net.Config.XmlConfigurator.Configure();
        }

        public static void SetConfig(FileInfo configFile)
        {
            log4net.Config.XmlConfigurator.Configure(configFile);
        }
        /// <summary>
        /// 普通的文件记录日志
        /// </summary>
        /// <param name="info"></param>
        public static void WriteLog(string info)
        {
            if (loginfo.IsInfoEnabled)
            {
                loginfo.Info(info);
            }
        }
        /// <summary>
        /// 错误日志
        /// </summary>
        /// <param name="info"></param>
        /// <param name="se"></param>
        public static void WriteLog(string info, Exception se)
        {
            if (logerror.IsErrorEnabled)
            {
                logerror.Error(info, se);
            }
        }
}

1.先弄个日志记录的类

<!--日志-->
  <log4net>
    <logger name="logerror">
      <level value="ERROR" />
      <appender-ref ref="ErrorAppender" />
    </logger>
    <logger name="loginfo">
      <level value="INFO" />
      <appender-ref ref="InfoAppender" />
    </logger>
    <appender name="ErrorAppender" type="log4net.Appender.RollingFileAppender">
      <param name="File" value="E:\xxx.com\xx.xxx.com\App_Log\Error\ErrorLog.log" />
      <param name="AppendToFile" value="true" />
      <param name="MaxSizeRollBackups" value="100" />
      <param name="MaximumFileSize" value="1MB" />
      <param name="RollingStyle" value="Size" />
      <param name="StaticLogFileName" value="true" />
      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="%-5p %d [%c] %m%n" />
      </layout>
    </appender>
    <appender name="InfoAppender" type="log4net.Appender.RollingFileAppender">
      <param name="File" value="E:\xxx.com\xxx.xxx.com\App_Log\Info\InfoLog.log" />
      <param name="AppendToFile" value="true" />
      <param name="MaxSizeRollBackups" value="100" />
      <param name="MaximumFileSize" value="1MB" />
      <param name="RollingStyle" value="Size" />
      <param name="StaticLogFileName" value="true" />
      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="%-5p %d [%c] %m%n" />
      </layout>
    </appender>
</log4net> 

2.WEB.CONFIG配置 在 configSections 节点上添加: 然后配置单独的节点:

void Application_Start(object sender, EventArgs e)
    {
        //在应用程序启动时运行的代码
        //初始日志的配置
        LogHelper.SetConfig();
    }

void Application_Error(object sender, EventArgs e)
    {
        //在出现未处理的错误时运行的代码
        Exception objExp = HttpContext.Current.Server.GetLastError();
        string username = "";
        string userid = "";
        if (Session["ulogin"] != null)
        {
            string[] uinfo=Session["ulogin"].ToString().Split(‘|‘);
            userid = uinfo[0];
            username = uinfo[1];
        }
        Aotain114.Public.LogHelper.WriteLog("\r\n用户ID:"+userid+"\r\n用户名:"+username+"\r\n客户机IP:" + Request.UserHostAddress + "\r\n错误地址:" + Request.Url + "\r\n异常信息:" + Server.GetLastError().Message, objExp);

    } 

3.在GOLBAL文件里调用写日志:

时间: 2024-10-11 06:30:05

log edit的相关文章

SQL编程实战-使用SQL*Plus

使用SQL*Plus 1.查看表结构 SQL> desc  regions_copy Name                                     Null?    Type ------------------------------------------------- ---------------------------- REGION_ID                                 NOT NULLNUMBER REGION_NAME     

MySQL5.6生产库自动化安装部署

自动化运维是一个DBA应该掌握的技术,其中,自动化安装数据库是一项基本的技能,本文中的安装脚本已通过测试,作为生产库来说没有问题,鉴于每个公司存储规划要求不同,可以按需自行修改脚本. 脚本中已经注释说明一些基本的安装信息 本脚本默认启用5.6部分新特性 innodb_buffer_pool_dump_at_shutdown=1  它dump的不是数据,是Id号 innodb_buffer_pool_load_at_startup=1 开启这个两个参数当数据库重启后把这些热数据重新加载回去 只有正

sqlplus 命令学习

sqlplus 命令学习 $ sqlplus  / as sysdba SQL> help index 可以输入sqlplus 命令 Enter Help [topic] for help. @             COPY         PAUSE                    SHUTDOWN @@            DEFINE       PRINT                    SPOOL /             DEL          PROMPT  

Hadoop Day2

1.分布式文件系统与HDFS(****了解***) ?  思考:windows的文件存储目录结构? ?  什么是分布式文件系统?(***了解***) 当数据量越来越多,在一个操作系统管辖的范围存不下了,那么就分配到更多的操作系统管理的磁盘中,但是不方便管理和维护,因此迫切需要一种系统来管理多台机器上的文件,这就是分布式文件管理系统 (Distributed File System). l  分布式文件系统的定义: 是一种允许文件通过网络在多台主机上分享的文件的系统,可让多机器上的多用户分享文件和

NameNode Recovery Tools for the Hadoop Distributed File System

转自:http://blog.cloudera.com/blog/2012/05/namenode-recovery-tools-for-the-hadoop-distributed-file-system/ Warning: The procedure described below can cause data loss. Contact Cloudera Support before attempting it. Most system administrators have had to

sqlplus

数据库简易链接方法sqlplus sys/[email protected]:1521/ora11g 在SQL*Plus输入exit或quit正常退出会话,事务将立即被提交 使用product_user_profile表,可以限制访问sql*plus和sql命令,也可以限制访问PL/SQL语句可以限制一个用户执行以下命令:alter,begin,connect,declare,exec,execute,grant,host,insert,select,updateSQL> desc produc

自动化安装Mysql5.6-脚本实现

Mysql5.6新特性: 1.优化器的改进:主要体现在索引条件pushdown以及多范围的读取数据,可降低过载. 2,InnoDB的改进:MySQL InnoDB 存储引擎团队主要提供了 NoSQL 的访问接口,可通过 Memcached 的 API 直接访问 InnoDB 的表. 3,更好的复制:改进数据完整性和高可用性及性能方面大大提升. 安装环境,  一台Centos6.5  推荐二进制安装. 本文已经经过测试,作为生产库来说没有问题.每个公司需求不同可以稍稍改动,本文使用的是mysql-

kendo method:destroy 解决有些在kendo.all.js 的js 库里报错问题

首先,不得不承认,kendo UI 是个不错的东西,特别对于一个前端开发到行不足的程序猿来说.而在我们使用过程中貌似还是会遇到各种奇怪的问题.比如我们会经常用到对一些控件进行重赋值. destroy 在kendo的configration 的Medhod 的描述是: Prepares the widget for safe removal from DOM. Detaches all event handlers and removes jQuery.data attributes to avo

Juniper SRX防火墙-NAT学习笔记!

Junos NAT第一部分:SRX NAT介绍第二部分:Source NAT:Interface NAT第三部分:Source NAT:Address Pools第四部分:Destination NAT第五部分:Static NAT--------------------------------------------------SRX Nat介绍1.Source NAT   //转换源的NAT,NAT+Gloabl2.Destination NAT  //Static pat3.Static