C# 程式A發送Log記錄給程式B,程式B處理和分析Log記錄

來源:互聯網
上載者:User

標籤:空間   listener   擴充   get   image   磁碟   info   rar   運行   

C# 程式A發送Log記錄給程式B,程式B處理和分析Log記錄

 

關鍵字:C# ;Log記錄 ;線上Log記錄;Socket;httplistener

 

一、常用情境

1、 APP開發,在真機或者虛擬機器上面運行由H5或者ApiCloud的程式,或者調試別人寫的程式的時候,往往不能看到一段代碼執行後的輸出結果是什麼。作為一個天天跟後台打交道的人,瀏覽器尤其是習慣了Google的F12的console.log,更是希望APP調試也能夠即時查看輸出。

 

 

2、開發一個.Net的網站,或者Java的網站,在調試的時候,寫了很多的System.console.writeline代碼,寫了很多System.out.println 代碼,但是網站一發布,除了寫在檔案/資料庫裡面的日誌記錄,一旦出現問題,定位不了那段代碼出錯了。把出錯寫在檔案中,又擔心檔案太大,佔據磁碟空間,想有一種可以開啟就記錄Log,關閉就不記錄Log的工具。

 

 

 

2、 其他類似的情況,一是程式是在一個黑盒子中開發的,或者是不想把無用的日誌寫入磁碟佔據空間,你需要一款開啟即用,關閉即停的工具

總結:我把他取名為:VisualTools,一個Log記錄的可視化展示工具。

二、基本架構流程設計圖:

 

 

如所示:Visual Debug Tool 提供兩種方式,一種是應用程式通過直接發送Log訊息給Visual Debug Tool,另一種是應用程式先發送GET請求給HTTP伺服器,有HTTP伺服器中轉寄送Log訊息給Visual Tool,這兩種方式,個人推薦第二種,第二種的可擴充性和相容性都不錯,只要應用程式類比發送GET請求,並將資料放到參數中就可以做到。

 

第二種方式有一個好處,就是,不是同一台機器上的程式,可以通過訪問HTTP 伺服器的方式,去記錄Log,這種方式尤其對於APP段輸出欄位值,有很高的便利性。

 

三、軟體介紹:

1、 HTTP Server迷你的HTTP工具,用來代理轉寄Log訊息:

 

 

應用程式通過GET方式訪問:http://127.0.0.1:8081?pid=&msgLevel=&msg=&other=

的方式,進行發送Log訊息。

 

Tips:

JS調用方式:

function GETLogPage(pid,msgLevel,msg,otherInfo){

    $.get("http://127.0.0.1:8081?pid="+encodeURIComponent(pid)+"&msgLevel="+encodeURIComponent(msgLevel)+"&msg="+encodeURIComponent(msg)+"&other="+encodeURIComponent(otherInfo), function(response,status,xhr){

       console.log(response);

    });

}

 

C# HttpGet調用方式,自行百度。

 

C#調用方式,直接發送給Visual Debug Tool:(相關類,以開源,後附開源地址)

    ToolsLib.MSGEntity msgentity = new ToolsLib.MSGEntity();

    msgentity.msgLevel = msgLevel;

    msgentity.msg = msg;

    msgentity.timeStr = timeStr;

    msgentity.pidIndentity = pidIndentity;

    msgentity.other = other;

    string ret = ToolsLib.SendMsgToBS.Send(msgentity);//發送實體

2、 Visual Debug Tool 工具

 

 

 

注意:HTTP Server迷你的HTTP工具 和 Visual Debug Tool 必須要運行在同一台伺服器端。如果要使用其他電腦訪問,可以在Visual Debug Tool裡面設定該程式為伺服器,其他機器通過選擇串連伺服器,進行串連。

 

如果您想要原始碼,聯絡QQ:1097712982

程式地址(不含源碼):https://files.cnblogs.com/files/lijuanfei/VisualDebugTool.rar

C# 程式A發送Log記錄給程式B,程式B處理和分析Log記錄

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.