Syslog 中的 Service Fabric Linux 叢集事件
Service Fabric 會公開一組平台事件,以通知您叢集中的重要活動。 此處有完整的公開事件清單。 取用這些事件的方式有很多種。 我們將在本文中討論如何設定 Service Fabric 來將這些事件寫入 Syslog。
簡介
在 6.4 版中,已引入 SyslogConsumer 將 Service Fabric 平台事件傳送至 Linux 叢集的 Syslog。 一旦開啟,事件就會自動流向 Syslog,並由 Log Analytics 代理程式收集及傳送。
每個 Syslog 事件有 4 個元件
- 設施
- 身分識別
- 訊息
- 嚴重性
SyslogConsumer 會使用 Local0
設施 (Facility) 寫入所有平台事件。 您可以藉由變更組態設定來更新為任何有效的設施。使用的身分識別是 ServiceFabric
。 [訊息] 欄位會包含整個以 JSON 序列化的事件,以便各種工具查詢及取用。
啟用 SyslogConsumer
若要啟用 SyslogConsumer,您需要執行叢集升級。 fabricSettings
區段必須以下列程式碼更新。 請注意,此程式碼只會包含與 SyslogConsumer 相關的區段
"fabricSettings": [
{
"name": "Diagnostics",
"parameters": [
{
"name": "ConsumerInstances",
"value": "AzureWinFabCsv, AzureWinFabCrashDump, AzureTableWinFabEtwQueryable, SyslogConsumer"
}
]
},
{
"name": "SyslogConsumer",
"parameters": [
{
"name": "ProducerInstance",
"value": "WinFabLttProducer"
},
{
"name": "ConsumerType",
"value": "SyslogConsumer"
},
{
"name": "IsEnabled",
"value": "true"
}
]
},
{
"name": "Common",
"parameters": [
{
"name": "LinuxStructuredTracesEnabled",
"value": "true"
}
]
}
],
以下是需要留意的變更
- 在 [一般] 區段中,有一個稱為 [
LinuxStructuredTracesEnabled
] 的新參數。 將 Linux 事件傳送給 Syslog 時,需要此參數才能將事件結構化及序列化。 - 在 [診斷] 區段中,已新增新的 ConsumerInstance: SyslogConsumer。 這會告訴平台有其他事件取用者。
- 新的 SyslogConsumer 區段必須將
IsEnabled
設為true
。 會自動將其設定為使用 Local0 設施。 您可以藉由新增另一個參數來覆寫此設定。
{
"name": "New LogFacility",
"value": "<Valid Syslog Facility>"
}
Azure 監視器記錄整合
您可以在監視工具 (例如 Azure 監視器記錄) 中讀取這些 Syslog 事件。 您可以使用 Azure Marketplace,透過這些指示來建立 Log Analytics 工作區。
您也需要將 Log Analytics 代理程式新增至叢集,以收集和傳送此資料至工作區。 這是用來收集效能計數器的相同代理程式。
瀏覽至
Advanced Settings
區段選取
Data
選取
Syslog
將 Local0 設定要追蹤的設施。您可以在 fabricSettings 中進行變更,以新增另一個設施
按一下工作區資源功能表中的
Logs
,即可前往 [查詢總管] 來開始查詢您可以根據
Syslog
資料表進行查詢,尋找作為 ProcessName 的ServiceFabric
。 下列查詢是如何剖析事件中的 JSON 並顯示其內容的範例
Syslog | where ProcessName == "ServiceFabric" | extend $payload = parse_json(SyslogMessage) | project $payload
上述範例中是 NodeDown 事件。 您可以在此處檢視完整的事件清單。
下一步
- 部署 Log Analytics 代理程式至您的節點,以收集效能計數器,並收集您容器的 Docker 統計資料和記錄
- 熟悉 Azure 監視器記錄中提供的記錄搜尋和查詢功能
- 在 Azure 監視器記錄中使用檢視表設計工具建立自訂檢視
- Azure 監視器記錄與 Syslog 整合作法的參考。