本文介绍如何通过日志服务控制台创建Logtail采集配置来采集Beats和Logstash数据源。

前提条件

  • 已在服务器上安装Linux Logtail 0.16.9及以上版本或Window Logtail 1.0.0.8及以上版本。具体操作,请参见安装Logtail(Linux系统)安装Logtail(Windows系统)
  • 已通过Logstash或Beats系列软件采集到数据。
    • 如果要通过Logstash采集数据,请参见Logstash-Lumberjack-Output
    • 如果要通过Beats系列软件采集数据,请参见Beats-Lumberjack-Output
      本文以使用PacketBeat软件采集本地网络数据包,并使用Logtail Lumberjack插件上传到日志服务为例,进行说明。配置PacketBeat输出方式为Logstash,示例如下所示。
      output.logstash:
        hosts: ["127.0.0.1:5044"]

背景信息

基于Logstash、Beats系列软件对Lumberjack协议的支持,Logtail可以通过Lumberjack协议将Beats系列软件(MetricBeat、PacketBeat、Winlogbeat、Auditbeat、Filebeat、Heartbeat等)、Logstash采集的数据上传到日志服务。
说明
  • 同一Logtail可配置多个Lumberjack插件,但多个插件不能监听同一端口。
  • Lumberjack插件支持SSL,上传Logstash采集的数据需要使用该功能。

操作步骤

  1. 登录日志服务控制台
  2. 接入数据区域,选择自定义数据插件
  3. 选择目标Project和Logstore,单击下一步
  4. 创建机器组。
    • 如果您已有可用的机器组,请单击使用现有机器组
    • 如果您还没有可用的机器组,请执行以下操作(以ECS为例)。
      1. ECS机器页签中,通过手动选择实例方式选择目标ECS实例,单击创建

        具体操作,请参见安装Logtail(ECS实例)

        重要 如果您的服务器是与日志服务属于不同账号的ECS、其他云厂商的服务器和自建IDC时,您需要手动安装Logtail。更多信息,请参见安装Logtail(Linux系统)安装Logtail(Windows系统)

        手动安装Logtail后,您必须在该服务器上手动配置用户标识。具体操作,请参见配置用户标识

      2. 安装完成后,单击确认安装完毕
      3. 创建机器组页面,输入名称,单击下一步

        日志服务支持创建IP地址机器组和用户自定义标识机器组,详细参数说明请参见创建IP地址机器组创建用户自定义标识机器组

  5. 选中目标机器组,将该机器组从源机器组移动到应用机器组,单击下一步
    重要 创建机器组后立刻应用,可能因为连接未生效,导致心跳为FAIL,您可单击自动重试。如果还未解决,请参见Logtail机器组无心跳进行排查。
  6. 数据源设置页签中,设置配置名称插件配置,然后单击下一步
    • inputs为数据源配置,必选项。
      重要 一个inputs中只允许配置一个类型的数据源。
    • processors为处理配置,用于解析数据。可选项,您可以配置一种或多种处理方式。

      如果当前的inputs配置无法满足日志解析需求,您可以在插件配置中添加processors配置,即添加Logtail插件处理数据。例如提取字段、提取日志时间、脱敏数据、过滤日志等。更多信息,请参见使用Logtail插件处理数据

    由于Beats和Logstash输出的都是JSON格式数据,因此需要使用processor_anchor将JSON展开。

    {
      "inputs": [
        {
          "detail": {
            "BindAddress": "0.0.0.0:5044"
          },
          "type": "service_lumberjack"
        }
      ],
      "processors": [
        {
          "detail": {
            "Anchors": [
              {
                "ExpondJson": true,
                "FieldType": "json",
                "Start": "",
                "Stop": ""
              }
            ],
            "SourceKey": "content"
          },
          "type": "processor_anchor"
        }
      ]
    }
                            
    参数类型是否必选说明
    typestring数据源类型,固定为service_lumberjack
    BindAddressstringLumberjack协议绑定的地址。不配置时,默认为127.0.0.1:5044,支持自定义。如果Lumberjack协议需要被局域网内其他主机访问,请配置为0.0.0.0:5044
    V1boolean是否使用Lumberjack V1版本协议。不配置时,默认为false。目前Logstash支持Lumberjack V1。
    V2boolean是否使用Lumberjack V2版本协议。不配置时,默认为true。目前Beats系列软件支持Lumberjack V2。
    SSLCAstring证书授权机构(Certificate Authority)颁发的签名证书路径,默认为空。如果是自签名证书可不设置此选项。
    SSLCertstring证书的路径,默认为空。
    SSLKeystring证书对应私钥的路径,默认为空。
    InsecureSkipVerifyboolean是否跳过SSL安全检查。不配置时,默认为false,执行SSL安全检查。
  7. 预览数据及创建索引,然后单击下一步
    日志服务默认开启全文索引。您也可以根据采集到的日志,手动创建字段索引,或者单击自动生成索引,日志服务将自动生成字段索引。更多信息,请参见创建索引
    重要 如果您要查询和分析日志,那么全文索引和字段索引必须至少启用一种。同时启用时,以字段索引为准。
  8. 单击查询日志,系统将跳转至Logstore查询分析页面。
    您需要等待1分钟左右,待索引生效后,才能在原始日志页签中,查看已采集到的日志。更多信息,请参见查询和分析日志

问题排查

使用Logtail采集日志后,如果预览页面或查询页面无数据,您可以参见Logtail采集日志失败的排查思路进行排查。

后续步骤

Logtail采集数据到日志服务后,您可以在日志服务控制台上进行查看。

_@metadata_beat:  packetbeat
_@metadata_type:  doc
_@metadata_version:  6.2.4
_@timestamp:  2018-06-05T03:58:42.470Z
__source__:  **.**.**.**
__tag__:__hostname__:  *******
__topic__:  
_beat_hostname:  bdbe0b8d53a4
_beat_name:  bdbe0b8d53a4
_beat_version:  6.2.4
_bytes_in:  56
_bytes_out:  56
_client_ip:  192.168.5.2
_icmp_request_code:  0
_icmp_request_message:  EchoRequest(0)
_icmp_request_type:  8
_icmp_response_code:  0
_icmp_response_message:  EchoReply(0)
_icmp_response_type:  0
_icmp_version:  4
_ip:  127.0.0.1
_path:  127.0.0.1
_responsetime:  0
_status:  OK
_type:  icmp