文本日誌是日誌的最基本類型,本文介紹使用Logtail採集ECS主機文本日誌、查詢與分析日誌等步驟,協助您快速上手使用Log Service。
前提條件
已有可用的ECS。更多資訊,請參見Elastic Compute Service快速入門。
已開通Log Service。具體操作,請參見開通Log Service。
背景資訊
本樣本中待採集的日誌路徑為/var/log/nginx/access.log
。
access.log
檔案中的日誌內容如下:
127.0.*.1 - - [20/Mar/2023:12:00:01 +0000] "GET / HTTP/1.1" 200 612 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.60 Safari/537.36"
192.168.*.1 - - [20/Mar/2023:12:00:02 +0000] "GET /about.html HTTP/1.1" 200 1435 "http://example.com/" "Mozilla/5.0 (iPhone; CPU iPhone OS 15_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.4 Mobile/15E148 Safari/604.1"
10.0.*.1 - - [20/Mar/2023:12:00:03 +0000] "POST /login HTTP/1.1" 302 0 "http://example.com/login.html" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.88 Safari/537.36"
127.0.*.1 - - [20/Mar/2023:12:00:04 +0000] "GET /images/logo.png HTTP/1.1" 200 45678 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
192.168.*.2 - - [20/Mar/2023:12:00:05 +0000] "GET /contact.html HTTP/1.1" 404 155 "http://example.com/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.4 Safari/605.1.15"
10.0.*.2 - - [20/Mar/2023:12:00:06 +0000] "GET /style.css HTTP/1.1" 200 12345 "http://example.com/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.82 Safari/537.36"
127.0.*.1 - - [20/Mar/2023:12:00:07 +0000] "GET /favicon.ico HTTP/1.1" 404 554 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.60 Safari/537.36"
192.168.*.3 - - [20/Mar/2023:12:00:08 +0000] "GET / HTTP/1.1" 200 612 "-" "curl/7.79.1"
10.0.*.3 - - [20/Mar/2023:12:00:09 +0000] "POST /api/data HTTP/1.1" 201 123 "http://example.com/dashboard" "PostmanRuntime/7.
針對該日誌範例,本文介紹主機文本日誌採集的操作步驟。
方案概覽
採集主機指定檔案的文本日誌,分為三步:
建立Project和Logstore:專案(Project)是Log Service中的資源嵌入式管理單元,用於資源隔離和控制。日誌庫(Logstore)是Log Service中日誌資料的採集、儲存和查詢單元。
添加Logtail採集配置:通過進行Logtail採集配置,可以將Logtail安裝至ECS伺服器並開始採集日誌,日誌會發送到對應的Logstore中。
查詢和分析日誌:您可以在控制台查詢和分析日誌,例如日誌檢索、日誌彙總、日誌統計等。
說明添加Logtial採集配置後,您需要等待1分鐘左右,待索引生效後,才能在原始日誌頁簽中,查看已採集到的日誌。更多資訊,請參見查詢文法。
Logtail只採集增量日誌。如果添加Logtail採集配置後,記錄檔無更新,則Logtail不會採集該檔案中的日誌。您可以在記錄檔中增加一行日誌。更多資訊,請參見Logtail採集詳情。
1. 建立Project和Logstore
1.1 建立Project
在Project列表地區,單擊建立Project,在建立Project面板中,選擇所屬地區(和ECS所屬地區相同),輸入Project名稱,其餘參數保持預設。更多配置,請參見建立專案Project。
1.2 建立Logstore
建立Project完成後,系統會提示您建立一個Logstore。
在Logstore面板中,輸入Logstore名稱,其餘參數保持預設。更多參數配置,請參見建立Logstore。
2. 添加Logtail採集配置
通過進行Logtail採集配置,可以將Logtail安裝至ECS伺服器並開始採集日誌,日誌會發送到對應的Logstore中。
2.1 選擇日誌空間
在建立成功對話方塊中,單擊確定。
在快速資料接入對話方塊的自建開源/商業軟體頁簽下,單擊單行-文本日誌對應的立即接入。
2.2 機器組配置
- ,在建立機器組面板中,選擇ECS執行個體,單擊安裝並建立為機器組。Project和ECS不同地區,請參見
頁面中Logtail安裝情況提示成功,則表示安裝成功。如果安裝失敗,單擊重建安裝任務,重新選擇ECS執行個體,安裝Logtail。
Logtail安裝完成後,輸入機器組名稱,IP地址會自動填滿已安裝Logtail的執行個體IP,無需填寫。更多資訊,請參見建立IP地址機器組。
檢測機器組心跳。建立機器組大約需要2分鐘。建立未生效,將導致心跳為FAIL。請2分鐘後單擊自動重試進行重試,直到機器組心跳為OK。機器組心跳排查請參見Logtail機器組無心跳。
2.3 Logtail配置
參考下圖,輸入配置名稱,檔案路徑,添加背景資訊中的1條日誌範例(一共9條日誌範例)。更多配置,請參見全域配置。
2.4 查詢分析配置
Logtail配置生效需要3分鐘左右,自動重新整理後,出現預覽資料,則說明Logtail配置生效。 配置生效後,單擊下一步,Logtail採集配置全部完成。
Log Service預設開啟全文索引。您也可以根據採集到的日誌,手動建立欄位索引,或者單擊自動產生索引,Log Service將自動產生欄位索引。更多資訊,請參見建立索引。
3. 查詢與分析日誌
在設定精靈的結束步驟中,單擊查詢日誌。跳轉到目標Logstore的查詢分析頁面,可以查看access.log
檔案中的日誌內容。在輸入框中輸入任一字元(如HTTP
),選擇時間範圍,就可以查詢所有包含該字元的日誌。
相關文檔
採集主機文本日誌的詳細步驟請參見採集主機文本日誌。
採集K8s日誌請參見通過DaemonSet方式採集Kubernetes容器文本日誌和通過Sidecar方式採集Kubernetes容器文本日誌。
採集雲產品日誌請參見雲產品日誌概述。
您可以將重要的查詢和分析結果儲存成儀錶盤(視覺化檢視)。具體操作,請參見建立儀錶盤。
如需對日誌配置警示,請參見快速設定日誌警示。
下載日誌請參見下載日誌。
常見問題
僅建立Project和Logstore,會產生費用嗎?
當您在建立Logstore時,Log Service預設預留Shard資源,因此可能產生活躍Shard租用費用。更多資訊,請參見為什麼會產生活躍Shard租用費用?
採集日誌失敗,如何排查?
使用Logtail採集日誌失敗,可能是因為Logtail心跳異常、採集錯誤、Logtail採集配置錯誤等原因。如何排查,請參見Logtail採集日誌失敗的排查思路。
在Logstore查詢與分析頁面,可以查詢日誌但無法分析日誌,如何解決?
如果您要分析日誌,需要為日誌欄位配置欄位索引並開啟統計功能。更多資訊,請參見建立索引。