全部產品
Search
文件中心

Simple Log Service:如何使用Logtail自動診斷工具

更新時間:Jul 17, 2024

當您使用Logtail採集日誌發生異常時,可通過Logtail自助診斷工具查看Logtail用戶端是否存在異常,並根據工具提示快速定位並解決問題。

重要
  • Logtail自動診斷工具僅支援Linux系統的伺服器。

  • Logtail只採集增量日誌。如果下發Logtail採集配置後,記錄檔無更新,則Logtail不會採集該檔案。更多資訊,請參見讀取日誌

診斷流程

下載及運行診斷工具

  1. 登入Linux伺服器。

  2. 下載診斷工具指令碼。

    wget http://logtail-release.oss-cn-hangzhou.aliyuncs.com/linux64/checkingtool.sh -O checkingtool.sh
  3. 安裝curl工具。

    Logtail自動診斷工具需通過curl工具進行網路連通性檢查,請確保目標伺服器已安裝curl工具。

  4. 運行診斷工具。

    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 :
  5. 根據提示輸入12,指令碼會根據您的選擇執行不同檢查流程。

    • 1表示執行機器組心跳異常檢查。機器組心跳失敗時,請選擇此項。

    • 2表示執行日誌採集檢查。機器組心跳成功,但記錄檔沒有被採集時,請選擇此項。

機器組心跳異常檢查

選擇機器組心跳異常檢查後,Logtail自動診斷工具將執行下述一系列的檢查。

  1. 檢查基礎環境是否正常。

    • 是否安裝Logtail。

    • 是否運行Logtail。

    • SSL狀態是否正常。

    • 與Log Service之間是否有網路聯通。

    [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資訊,請根據提示資訊進行處理。

  2. 檢查您的伺服器是否為當前阿里雲帳號下的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

    • 如果您的伺服器是與Log Service屬於不同帳號的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)
  3. 檢查您Project所在地區是否和安裝Logtail時所選地區一致。

    [Input]: please make sure your project is in this region : { cn-hangzhou } (y/N) :

    如果不一致,請重新安裝Logtail。具體操作,請參見安裝Logtail(Linux系統)

  4. 檢查您機器組中配置的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自動診斷工具將執行下述一系列的檢查。

  1. 檢查您機器組中配置的IP地址是否與提示資訊中的一致。

    [Input]:  please make sure your machine group's ip is same with : { 11.XX.XX.187 } (y/N) :

    如果不一致,請修改機器組中的IP地址。具體操作,請參見修改機器組

  2. 檢查您的Logtail採集配置是否已應用到目標機器組中。

    [Input]: please make sure you have applied collection config to the machine group (y/N) :Y

    如果未應用,請將您的Logtail採集配置應用到目標機器組中。具體操作,請參見應用Logtail採集配置

  3. 檢查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運行環境正常,建議在Log Service控制台中查看該配置項的異常日誌。更多資訊,請參見如何查看Logtail採集錯誤資訊

result

Logtail採集異常的常見問題

運行Logtail自動診斷工具後,可以診斷Logtail採集異常的原因,您可以根據具體原因尋找對應的解決方案。常見Logtail採集問題原因及解決方案如下。

常見問題

解決方案

安裝檔案丟失

重裝Logtail。

Logtail未運行

執行/etc/init.d/ilogtaild start命令,啟動Logtail。

多個Logtail進程

  1. 執行/etc/init.d/ilogtaild stop命令,關閉Logtail。

  2. 執行/etc/init.d/ilogtaild start命令,啟動Logtail。

443連接埠被禁用

在防火牆中,開啟443連接埠。

無法找到設定管理員

確認是否已正確安裝Linux Logtail。

如果安裝錯誤,請重新執行安裝命令。更多資訊,請參見安裝Logtail(Linux系統)

不存在使用者配置

確認是否已執行以下操作:

  1. 已建立Logtail採集配置。

  2. 機器組中包含該伺服器。

  3. 已經將Logtail採集配置應用到機器組。

沒有匹配指定記錄檔

確認是否正確建立Logtail採集配置。

指定記錄檔匹配多次

匹配多次時,Logtail會隨機播放一個Logtail採集配置。建議去重。

診斷工具常用參數

常用參數

說明

--help

查看協助文檔。

--logFile [LogFileFullPath]

檢測Logtail是否採集LogFileFullPath路徑中的日誌,同時檢查基本的Logtail運行環境(安裝檔案完整性、運行狀態、阿里雲帳號ID、網路連通性等)。

--logFileOnly [LogFileFullPath]

只檢測Logtail是否採集LogFileFullPath路徑中的日誌。

--envOnly

只檢測Logtail運行環境。