C#讀取Windows日誌

來源:互聯網
上載者:User

可以再global中記錄日誌到資料庫中
   //記錄ASP.NET網站中未處理的異常
        protected void Application_Error(object sender, EventArgs e)
        {
            Exception ex = Server.GetLastError().GetBaseException();
            LogEntry log = new LogEntry();
            log.Categories.Add("General");
            log.Title = "未處理的異常";
            log.EventId = 1;
            log.Message = ex.Message +
                            "\r\nSOURCE: " + ex.Source +
                            "\r\nFORM: " + Request.Form.ToString() +
                            "\r\nQUERYSTRING: " + Request.QueryString.ToString() +
                            "\r\nTARGETSITE: " + ex.TargetSite +
                            "\r\nSTACKTRACE: " + ex.StackTrace;
            Logger.Write(log);
        }

測試環境:.Net Framework 2.0、Windows Server 2003 SP2、Visual Studio 2005 SP1

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Text;

using System.Diagnostics;

public partial class Default3 : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
     {
        //Windows日誌有:"Application"應用程式, "Security"安全, "System"系統
        string[] logs = new string[] { "Application", "System" };

         StringBuilder result = new StringBuilder();

        foreach (string log in logs)
         {
             EventLog myLog = new EventLog();
             myLog.Log = log;
            //myLog.MachineName = "rondi-agt0qf9op";
            foreach (EventLogEntry entry in myLog.Entries)
             {
                //EventLogEntryType枚舉包括:
                //Error 錯誤事件。
                //FailureAudit 失敗審核事件。
                //Information 資訊事件。
                //SuccessAudit 成功審核事件。
                //Warning 警告事件。
                if (entry.EntryType == EventLogEntryType.Error || entry.EntryType == EventLogEntryType.Warning)
                 {
                     result.Append("<font color='red'>" + log);
                     result.Append(entry.EntryType.ToString() + "</font>");
                     result.Append("<font color='blue'>(" + entry.TimeWritten.ToString() + ")</font>:");
                     result.Append(entry.Message + "<br /><br />");
                 }
             }
         }
         Response.Write(result.ToString());
     }
}

輸出結果:

ApplicationWarning(2007-6-16 16:25:49):Event code: 3005 Event message: 發生了未處理的異常。 Event time: 2007-6-16 16:25:49 Event time (UTC)

SystemWarning(2007-6-16 10:34:15):瀏覽器服務不能從在網路 \Device\NetBT_Tcpip_{5AC78E63-D3B3-4246-8FF7-D8D2B41B3620} 上的主瀏覽器 \\QIANTING01 上檢索伺服器列表。 主瀏覽器: \\QIANTING01 網路: \Device\NetBT_Tcpip_{5AC78E63-D3B3-4246-8FF7-D8D2B41B3620} 此事件可能是由於暫時丟失網路連接造成的。如果此訊息再次出現,請確認伺服器仍然與網路連接。返回碼在資料文字框中。

SystemError(2007-6-16 10:34:45):瀏覽器服務已很多次無法在 \Device\NetBT_Tcpip_{5AC78E63-D3B3-4246-8FF7-D8D2B41B3620} 傳輸上捕獲備份列表。備份瀏覽器已經停止。

SystemError(2007-6-16 15:40:30):瀏覽器服務已很多次無法在 \Device\NetBT_Tcpip_{5AC78E63-D3B3-4246-8FF7-D8D2B41B3620} 傳輸上捕獲備份列表。備份瀏覽器已經停止。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.