發表文章

目前顯示的是 11月, 2022的文章

Application Insights 整合NLog

圖片
前言    這兩天將寫好的LineBot程式部署到Azure上測試,過程中發生錯誤及功能無法成功執行時候,要檢查是什麼原因? 頓覺寸步難行,沒有記錄可以查詢......也不知該如何查XD。花了些功夫,將這塊補上。 Application Insight - 啟用 App Service --> Application Insights 啟用。 啟用後,此時程式不用任何修改,只要有Request就可以在Azure上的Application Insights Transaction search查詢基本的資訊。 Application Insight - 程式修改 nuget參考  : Microsoft.ApplicationInsights.AspNetCore Program.cs  builder.Services.AddApplicationInsightsTelemetry(); appsettings.json 加入連線字串 (在Applicaiton Insights 頁面取得)     "ApplicationInsights": {         "ConnectionString": "Your Connection String"     } 此時你在本機測試(任何Request),可以在Azure上的Application Insights Transaction search查詢 或在Visual Studio查詢 Application Insight-搭配NLog 加入nuget參考 NLog.Web.AspNetCore Microsoft.ApplicationInsights.NLogTarget 新增NLog.config 設定如下, <instrumentationKey> 須換成你的 ,instrumentationKey在跟你取得ConnectionStrings同一位置。 設定內容:寫入檔案及Application Insights,並忽略開發時期的一堆底層資訊。 <?xml version="1.0" encoding="utf-8"?> <nlog xmlns="ht

.Net Core 使用NLog

圖片
  之前.Net Framework時使用的NLog,到了.Net Core後,使用方式有點不同,整理如下。 加入套件 NLog NLog.Web.AspNetCore 新增NLog.config檔案 設定檔已針對Microsoft及Hosting等略過及Conosle處理 <?xml version="1.0" encoding="utf-8"?> <nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" throwExceptions="false"       xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">   <extensions>     <add assembly="Microsoft.ApplicationInsights.NLogTarget" />     <add assembly="NLog.Web.AspNetCore"/>   </extensions>   <variable name="layoutDefine"       value="${longdate} [${event-properties:item=EventId_Id:whenEmpty=0}][${level:padding=-5}] ${message} ${exception:format=tostring} (${callsite:includeNamespace=false:fileName=true:includeSourcePath=false})" />   <targets>     <!---預設所有資訊先寫到Trace-->     <target xsi:type="Tra