zoukankan      html  css  js  c++  java
  • 错误日志[常用方法]

    <%@ Application Language="C#" %>

    <script runat="server">

        void Application_Start(object sender, EventArgs e)
        {
            // 在应用程序启动时运行的代码

        }
       
        void Application_End(object sender, EventArgs e)
        {
            //  在应用程序关闭时运行的代码

        }
           
        void Application_Error(object sender, EventArgs e)
        {
            // 在出现未处理的错误时运行的代码
            Exception ex = Server.GetLastError().GetBaseException();
            string errorTime = "发生时间:" + DateTime.Now.ToString();
            string errorAddress = "发生异常页:" + Request.Url.ToString();
            string errorInfo = "异常信息:" + ex.Message;
            string errorSource = "错误源:" + ex.Source;
            string errorTrace = "堆栈信息:" + ex.StackTrace;
            Server.ClearError();
            System.IO.StreamWriter writer = null;
            try
            {
                string year = DateTime.Now.Year.ToString();
                string month = DateTime.Now.Month.ToString();
                string day = DateTime.Now.Day.ToString();
                string path = string.Empty;
                string filename = DateTime.Now.ToString("yyyyMMdd") + ".txt";
                path = Server.MapPath("~/Error/") + year + month + day;
                if (!System.IO.Directory.Exists(path))
                {
                    System.IO.Directory.CreateDirectory(path); //创建文件
                }
                System.IO.FileInfo file = new System.IO.FileInfo(path + "/" + filename);
                writer = new System.IO.StreamWriter(file.FullName, true); //不创建文件,追加
                writer.WriteLine("用户IP:" + Request.UserHostAddress);
                writer.WriteLine(errorTime);
                writer.WriteLine(errorInfo);
                writer.WriteLine(errorSource);
                writer.WriteLine(errorTrace);
                writer.WriteLine("------------------------");

            }
            finally
            {
                if (writer != null)
                    writer.Close();
            }
            Server.Transfer("~/Default.aspx"); //跳转到显示友好错误的页面

        }

        void Session_Start(object sender, EventArgs e)
        {
            // 在新会话启动时运行的代码

        }

        void Session_End(object sender, EventArgs e)
        {
            // 在会话结束时运行的代码。
            // 注意: 只有在 Web.config 文件中的 sessionstate 模式设置为
            // InProc 时,才会引发 Session_End 事件。如果会话模式设置为 StateServer
            // 或 SQLServer,则不会引发该事件。

        }
          
    </script>

  • 相关阅读:
    Parameter Binding in ASP.NET Web API
    Which HTTP methods match up to which CRUD methods?
    ErrorHandling in asp.net web api
    HttpStatusCode
    Autofac Getting Started(默认的构造函数注入)
    Autofac Controlling Scope and Lifetime
    luvit 被忽视的lua 高性能框架(仿nodejs)
    undefined与null的区别
    VsCode中使用Emmet神器快速编写HTML代码
    字符串匹配---KMP算法
  • 原文地址:https://www.cnblogs.com/chenqingwei/p/1743351.html
Copyright © 2011-2022 走看看