1. 程式人生 > 其它 >利用Log4net在Azure Application Insights上列印日誌

利用Log4net在Azure Application Insights上列印日誌

1,概要

嘗試利用Log4net在Azure Application Insights上列印日誌的方法

2,環境

IDE:VisualStudio 2019

3,具體步驟

前提條件:專案的Azure Application Insights的相關設定完成

①    Nuget 包管理器控制檯下安裝下列相關包

Install-Package log4net
Install-Package Microsoft.ApplicationInsights.Log4NetAppender

②    Program.cs程式碼追加

    public class Program
    {
        
public static void Main(string[] args) { CreateHostBuilder(args).Build().Run(); log4net.Config.XmlConfigurator.Configure(); } public static IHostBuilder CreateHostBuilder(string[] args) => Host.CreateDefaultBuilder(args) .ConfigureLogging((hostingContext, logging)
=> { logging.ClearProviders(); logging.AddLog4Net(); }) .ConfigureWebHostDefaults(webBuilder => { webBuilder.UseStartup<Startup>(); }); }

③    之後的日誌出力方法和通常的Log4net一樣即可

④    使用Application Insights入口網站的檢索功能來確認日誌內容

 

4,注意點

①    列印日誌的同時,相關情報也一起打印出來,最好不要一條一條列印,而是儘可能打包一次性輸出,從而減少列印的次數

②    Application Insights的取樣(sampling)預設有效,所以短期內大量列印日誌的話,有可能進行取樣列印日誌,所以如果需要列印所有日誌的話,需要將取樣進行無效化設定