當您使用Logtail采集日志發生異常時,可通過Logtail自助診斷工具查看Logtail客戶端是否存在異常,并根據工具提示快速定位并解決問題。
Logtail自動診斷工具僅支持Linux系統的服務器。
Logtail只采集增量日志。如果下發Logtail采集配置后,日志文件無更新,則Logtail不會采集該文件。更多信息,請參見讀取日志。
診斷流程
下載及運行診斷工具
登錄Linux服務器。
下載診斷工具腳本。
wget http://logtail-release.oss-cn-hangzhou.aliyuncs.com/linux64/checkingtool.sh -O checkingtool.sh
安裝curl工具。
Logtail自動診斷工具需通過curl工具進行網絡連通性檢查,請確保目標服務器已安裝curl工具。
運行診斷工具。
chmod 744 ./checkingtool.sh ./checkingtool.sh sh checkingtool.sh
系統將返回如下類似信息。
[Info]: Logtail checking tool version : 0.3.0 [Input]: please choose which item you want to check : 1. MachineGroup heartbeat fail. 2. MachineGroup heartbeat is ok, but log files have not been collected. Item :
根據提示輸入
1
或2
,腳本會根據您的選擇執行不同檢查流程。1
表示執行機器組心跳異常檢查。機器組心跳失敗時,請選擇此項。2
表示執行日志采集檢查。機器組心跳成功,但日志文件沒有被采集時,請選擇此項。
機器組心跳異常檢查
選擇機器組心跳異常檢查后,Logtail自動診斷工具將執行下述一系列的檢查。
檢查基礎環境是否正常。
是否安裝Logtail。
是否運行Logtail。
SSL狀態是否正常。
與日志服務之間是否有網絡聯通。
[Info]: Logtail checking tool version : 0.3.0 [Input]: please choose which item you want to check : 1. MachineGroup heartbeat fail. 2. MachineGroup heartbeat is ok, but log files have not been collected. Item : 1 [Info]: Check logtail install files [Info]: Install file: ilogtail_config.json exists. [ OK ] [Info]: Install file: /etc/init.d/ilogtaild exists. [ OK ] [Info]: Install file: ilogtail exists. [ OK ] [Info]: Bin file: /usr/local/ilogtail/ilogtail_0.14.2 exists. [ OK ] [Info]: Logtail version : [ OK ] [Info]: Check logtail running status [Info]: Logtail is runnings. [ OK ] [Info]: Check network status [Info]: Logtail is using ip: 11.XX.XX.187 [Info]: Logtail is using UUID: 0DF18E97-0F2D-486F-B77F-XXXXXXXXXXXX [Info]: Check SSL status [Info]: SSL status OK. [ OK ] [Info]: Check logtail config server [Info]: config server address: http://config.sls.aliyun-inc.com [Info]: Logtail config server OK [ OK ]
如果出現
Error
信息,請根據提示信息進行處理。檢查您的服務器是否為當前阿里云賬號下的ECS。
[Input]: Is your server non-Alibaba Cloud ECS or not belong to the same account with the current Project of Log Service ? (y/N)
如果您的服務器是當前阿里云賬號下的ECS,則輸入
N
。如果您的服務器是與日志服務屬于不同賬號的ECS、其他云廠商的服務器和自建IDC時,則輸入
y
。輸入
y
后,診斷工具將輸出本地配置的用戶標識信息。請確認其中是否包含了您的阿里云賬號ID。如果未包含,請配置用戶標識。具體操作,請參見配置用戶標識。[Input]: Is your server non-Alibaba Cloud ECS or not belong to the same account with the current Project of Log Service ? (y/N)y [Info]: Check aliyun user id(s) [Info]: aliyun user id : 126XXXXXXXXXX79 . [ OK ] [Info]: aliyun user id : 165XXXXXXXXXX50 . [ OK ] [Info]: aliyun user id : 189XXXXXXXXXX57 . [ OK ] [Input]: Is your project owner account ID is the above IDs ? (y/N)
檢查您Project所在地域是否和安裝Logtail時所選地域一致。
[Input]: please make sure your project is in this region : { cn-hangzhou } (y/N) :
如果不一致,請重新安裝Logtail。具體操作,請參見安裝Logtail(Linux系統)。
檢查您機器組中配置的IP地址或用戶自定義標識是否與提示信息中的一致。
[Input]: please make sure your machine group's ip is same with : { 11.XX.XX.187 } or your machine group's userdefined-id is in : { XX-XXXXX } (y/N) :
如果不一致,請修改機器組中的IP地址或用戶自定義標識。更多信息,請參見修改機器組。
檢查日志采集檢查
選擇日志采集檢查后,Logtail自動診斷工具將執行下述一系列的檢查。
檢查您機器組中配置的IP地址是否與提示信息中的一致。
[Input]: please make sure your machine group's ip is same with : { 11.XX.XX.187 } (y/N) :
如果不一致,請修改機器組中的IP地址。具體操作,請參見修改機器組。
檢查您的Logtail采集配置是否已應用到目標機器組中。
[Input]: please make sure you have applied collection config to the machine group (y/N) :Y
如果未應用,請將您的Logtail采集配置應用到目標機器組中。具體操作,請參見應用Logtail采集配置。
檢查Logtail采集配置中的日志文件路徑是否正確。
檢查時,請輸入您需要檢查的日志文件全路徑。如果未找到匹配項,請確認配置的路徑是否可以匹配目標文件。
如果配置錯誤,請修改Logtail采集配置,然后等待1分鐘后再次執行此腳本重新檢查。如何修改Logtail采集配置,請參見修改Logtail采集配置。
[Input]: please input your log file's full path (eg. /var/log/nginx/access.log) :/disk2/logs/access.log [Info]: Check specific log file [Info]: Check if specific log file [ /disk2/logs/access.log ] is included by user config. [Warning]: Specific log file doesnt exist. [ Warning ] [Info]: Matched config found: [ OK ] [Info]: [Project] -> sls-zc-xxxxxx [Info]: [Logstore] -> release-xxxxxxx [Info]: [LogPath] -> /disk2/logs [Info]: [FilePattern] -> *.log
檢查通過但采集依然異常
如果所有的檢查全部通過,但仍然采集異常,請在腳本最后的選擇中輸入y
并回車確認。系統將返回如下信息。
[Input]: please make sure all the check items above have passed. If the problem persists, please copy all the outputs and submit a ticket in the ticket system. : (y/N)y
請提交工單,并在工單中提供檢查腳本輸出的信息。
運行快速檢查
運行快速檢查時,您無需確認。快速檢查可用于二次封裝自定義檢查腳本。
運行快速檢查時,會輸出您在Logtail客戶端中配置的用戶標識(阿里云賬號ID)和機器組的自定義用戶標識。如果不存在,也不會告警。如果您設置了這些信息,請查看提示信息中的內容與您設置的是否一致。如果不一致,請按照以下方法重新設置。
您可以運行./checkingtool.sh --logFile [LogFileFullPath]
命令進行快速檢查。 如果提示異常,請根據提示信息進行處理。
如果指定的日志文件檢查通過且Logtail運行環境正常,建議在日志服務控制臺中查看該配置項的異常日志。更多信息,請參見如何查看Logtail采集錯誤信息。
Logtail采集異常的常見問題
運行Logtail自動診斷工具后,可以診斷Logtail采集異常的原因,您可以根據具體原因查找對應的解決方案。常見Logtail采集問題原因及解決方案如下。
常見問題 | 解決方法 |
安裝文件丟失 | 重裝Logtail。 |
Logtail未運行 | 執行 |
多個Logtail進程 |
|
443端口被禁用 | 在防火墻中,開啟443端口。 |
無法找到配置服務器 | 確認是否已正確安裝Linux Logtail。 如果安裝錯誤,請重新執行安裝命令。更多信息,請參見安裝Logtail(Linux系統)。 |
不存在用戶配置 | 確認是否已執行以下操作:
|
沒有匹配指定日志文件 | 確認是否正確創建Logtail采集配置。 |
指定日志文件匹配多次 | 匹配多次時,Logtail會隨機選擇一個Logtail采集配置。建議去重。 |
診斷工具常用參數
常用參數 | 說明 |
| 查看幫助文檔。 |
| 檢測Logtail是否采集 |
| 只檢測Logtail是否采集 |
| 只檢測Logtail運行環境。 |