当日志采集发生异常时,您可以通过Logtail自助检测工具查看客户端是否存在异常情况,根据工具提示快速定位并解决问题。

 
说明 本工具目前仅支持Linux系统的服务器。

准备工作

  1. 下载检测工具脚本。

     
    wget http://logtail-release.oss-cn-hangzhou.aliyuncs.com/linux64/checkingtool.sh -O
    checkingtool.sh
     
    说明 如果无法正常下载,请通过以下备用地址重试。

     
    wget http://logtail-corp.oss-cn-hangzhou-zmf.aliyuncs.com/linux64/checkingtool.sh
    -O checkingtool.sh
  2. 安装curl工具。

    检查工具需要使用curl进行网络连通性检查,请确保机器已安装curl工具。

运行诊断工具

  1. 执行以下命令运行诊断工具:

     
    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 :
  2. 请根据提示输入12,脚本会根据您的选择执行不同检查流程。

    其中:

    • 1表示执行机器组心跳检查,机器组心跳失败时请选择此项。
    • 2表示执行日志采集检查,机器组心跳成功,但日志文件没有被采集时,请选择此项。

    选择检查项目后,诊断工具会自动执行对应检查流程。

诊断流程

机器组心跳检查

选择机器组心跳检查流程后会进行下述一系列的检查:

  1. 基础环境检查。

    • 是否安装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

    若其中检查出现Error信息,请参考提示进行处理。

  2. 确认是否非本人ECS。

    基础环境检查通过后,请确认您的服务器是否为ECS、是否由本账号购买。

    若此服务器不是ECS或者ECS购买账号和日志服务账号不同,输入y,否则输入N

     
    [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后,检查工具会输出本地配置的AliUid信息,请确认其中是否包含了您的AliUid,若未包含请参考文档创建AliUid标识

     
    [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. 检查Region。

    请确认您的Project所在区域是否和Logtail安装时所选区域一致,若不一致请重新安装Logtail

     
    [Input]: please make sure your project is in this region : { cn-hangzhou } (y/N) :
  4. 检查IP配置。

    请确认您机器组配置的IP和Logtail工作IP一致,若不一致请参考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) :

日志采集检查

选择日志未采集检查流程后会进行下述一系列的检查:
  1. 确认IP配置。

    请确认您机器组配置的ip和Logtail工作ip一致且心跳正常,若不一致请修改机器组

     
    [Input]:  please make sure your machine group's ip is same with : { 11.XX.XX.187 } (y/N) :
  2. 确认采集配置应用。

    请确认您的采集配置已经成功应用到该机器组中,如何查看机器组应用配置参见管理机器组

     
    [Input]: please make sure you have applied collection config to the machine group (y/N) :Y
  3. 检查日志文件。

    检查时请输入您需要检查的日志文件全路径,若未找到匹配项,请确认配置的路径信息可以匹配给定的日志文件。

    若配置错误请重新修改采集配置并保存,1分钟后再次执行此脚本重新检查。

     
    [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

快速检查

快速检查运行时无需确认,可用于二次封装自定义检查脚本。

 
说明 快速检查运行时会输出客户端配置的 阿里云ID和 动态机器组/自定义标识,不存在时并不会给出告警,如果客户端需要阿里云ID或动态机器组/自定义标识的配置,请查看工具的输出和您配置的是否一致,不一致时按照以下方法重新配置:创建AliUid标识自定义标识机器组

操作步骤

请运行脚本 ./checkingtool.sh --logFile [LogFileFullPath]进行检查。 检测脚本发现异常时,请根据脚本提示进行处理。

 
说明 若指定日志文件检查通过且Logtail运行环境正常,建议进入阿里云控制台中查看该日志服务配置项的异常日志,参见诊断采集错误

Logtail采集异常的常见问题

运行Logtail快速诊断工具后,可以诊断出Logtail采集异常的原因,您可以根据具体原因查找对应的解决方案。常见Logtail采集问题原因及解决方案如下。

 
常见问题 解决方法
安装文件丢失 重装Logtail。
Logtail未运行 使用命令/etc/init.d/ilogtaild start开启Logtail。
多个Logtail进程 使用命令/etc/init.d/ilogtaild stop关闭Logtail,然后执行命令/etc/init.d/ilogtaild start开启。
443端口被禁用 防火墙开放443端口。
无法找到配置服务器 确认是否已正确安装 Linux Logtail,若安装错误,重新执行安装命令。
不存在用户配置 确认是否已执行以下操作:
  1. 控制台已经创建好Logtail配置。
  2. 机器组中包含该服务器。
  3. 已经将配置应用到机器组。
没有匹配指定日志文件 确认是否正确配置了Logtail。
指定日志文件匹配多次 匹配多次时Logtail会随机选择一个配置,建议去重。

检测工具常用参数

 
常用参数 说明
--help 查看帮助文档。
--logFile [LogFileFullPath] 检测Logtail是否收集路径为LogFileFullPath的日志,同时检查基本的Logtail运行环境(安装文件完整性、运行状态、阿里云userID、网络连通性等)。
--logFileOnly [LogFileFullPath] 只检测Logtail是否收集路径为LogFileFullPath的日志。
--envOnly 只检测Logtail运行环境。

阿里云Logtail 快速诊断工具的更多相关文章

  1. 阿里云运维部署工具AppDeploy详细教程

    AppDeploy是一个通过SSH实现的命令行工具,可完成应用部署和远程运维管理.当前工具实现为两个版本:普通版(伪代码描述语言)和Python版.Python版使用Python语法规则,可实现您的各 ...

  2. 阿里云Ubuntu快速建站

    阿里云Ubuntu快速建站 有一个小笑话: 从前有个程序员遇到了一个问题.他想,没事,我懂,用线程就好了.现他有两个问题了. 本人小白,对网站部署什么都不懂,只是申请个阿里云服务器,把我的站点放上去. ...

  3. 做一个能对标阿里云的前端APM工具(下)

    上篇请访问这里做一个能对标阿里云的前端APM工具(上) 样本多样性问题 上一小节中的实施方案是微观的,即单次性的.具体的.但是从宏观上看,我需要保证性能测试是公允的,符合大众预期的.为了达到这种效果, ...

  4. 即插即用,基于阿里云Ganos快速构建云上开源GIS方案

    对于轻量级GIS应用,选择具备时空能力的云上数据库再搭配开源GIS软件,能够快速构建稳定.廉价.实用的GIS解决方案.Ganos是阿里云自研时空基础设施(PaaS层)的核心引擎,该引擎整合了云上异构计 ...

  5. 做一个能对标阿里云的前端APM工具(上)

    APM 全称是 Application Performance Monitor,即性能监控 这篇文章有三个前提: 从产品形态上看这肯定不是一个能够媲美阿里产品的竞品,所以抱歉我碰瓷了.你可以把这里的阿 ...

  6. 阿里云SLB快速切换至https

    域名caifuxiang.com是直接解析到阿里云SLB的,运行了好几年的http服务,今天通过修改配置快速切换到了https,莫名就感觉更上档次了! 首先,SSL证书 服务可以提供免费单域名证书 w ...

  7. 推荐一款阿里开源的 Java 诊断工具,好用到爆!

    Arthas是什么鬼? Arthas是一款阿里巴巴开源的 Java 线上诊断工具,功能非常强大,可以解决很多线上不方便解决的问题. Arthas诊断使用的是命令行交互模式,支持JDK6+,Linux. ...

  8. 一款阿里开源的 Java 诊断工具

    Arthas是什么鬼? Arthas是一款阿里巴巴开源的 Java 线上诊断工具,功能非常强大,可以解决很多线上不方便解决的问题. Arthas诊断使用的是命令行交互模式,支持JDK6+,Linux. ...

  9. 阿里重磅开源在线分析诊断工具Arthas(阿尔萨斯)

    github地址: Arthas English version goes here. Arthas 是Alibaba开源的Java诊断工具,深受开发者喜爱. 当你遇到以下类似问题而束手无策时,Art ...

随机推荐

  1. boto3--通过Python的SDK连接aws

    通过Python的SDK连接aws 参考: https://aws.amazon.com/cn/developers/getting-started/python/ aws上生成访问密钥 ID 和私有 ...

  2. 【C语言】 二叉树的基本运算

    • 二叉树节点类型BTNode: typedef struct node { char data; struct node *lchild, *rchild; } BTNode; 创建二叉树 void ...

  3. 【C++ Primer | 15】C++虚函数表剖析①

    概述 为了实现C++的多态,C++使用了一种动态绑定的技术.这个技术的核心是虚函数表(下文简称虚表).本文介绍虚函数表是如何实现动态绑定的. C++多态实现的原理: •  当类中声明虚函数时,编译器会 ...

  4. android Unable to inflate view tag without class attribute

    定位 到 问题 是 布局文件出错,   Unable to inflate view tag without class attribute 错误 原因 <view android:layout ...

  5. 利用mysqldump 实现每天备份方案

    1.创建单独的导出导入数据库帐号 grant SELECT, RELOAD, SHOW DATABASES, LOCK TABLES on game to jackluo@localhost iden ...

  6. python爬取糗百内容

    #-*- coding: utf-8 -*- import urllib import urllib2 import re #页面为1 page=1 url='http://www.qiushibai ...

  7. 【Java】 剑指offer(44) 连续子数组的最大和

    本文参考自<剑指offer>一书,代码采用Java语言. 更多:<剑指Offer>Java实现合集   题目 数字以0123456789101112131415…的格式序列化到 ...

  8. 011 Spark应用构成结构

    一:端口4040 1.意思 其中4040端口代表的含义是application UI 是应用程序界面. 包含Jobs,Stages,environment,System,SQL等. 二:应用结构 1. ...

  9. 096实战 在windows下新建maven项目

    1.拷贝settings到.m2文件下 2.修改文件 3.新建Project项目 4.转换为maven项目 config下转换 5.拷贝pom文件 <project xmlns="ht ...

  10. js数据结构之hash散列的详细实现方法

    hash散列中需要确定key和value的唯一确定关系. hash散列便于快速的插入删除和修改,不便于查找最大值等其他操作 以下为字符和数字的hash散列: function HashTable () ...