采集Zabbix数据

Zabbix作为常用的开源监控系统,提供了丰富的告警规则用于系统监控。日志服务支持采集Zabbix中的监控数据。本文介绍将Zabbix数据采集到日志服务的操作步骤。

前提条件

步骤一:配置数据存储路径

Zabbix会将监控数据保存在其所在的机器上,您可以根据如下步骤设置监控数据的存储路径。

  1. 登录Zabbix所在服务器。

  2. 打开zabbix_server.conf文件。

    vim /etc/zabbix/zabbix_server.conf
  3. zabbix_server.conf文件中,设置数据存储路径。

    使用Zabbix的实时导出(Real-time Export)功能,将Zabbix 的监控数据(事件、历史值、趋势)以JSON格式导出。该功能要求Zabbix版本号不能低于4.0。具体操作,请参见Real-time export

    不建议使用ExportDir=/tmp/ ,/tmp 通常为 tmpfs(内存文件系统),写入速度极快但占用内存资源。若导出数据量大(如高频率监控项),可能导致内存耗尽或系统 OOM(Out Of Memory)。
    ExportDir=/data/zabbix_export
  4. 重启Zabbix服务,使配置生效。

    systemctl restart zabbix-server

    配置生效后,Zabbix会在/data/zabbix_export目录下生产文件(文件名后缀为.ndjson),用于保存监控数据。

步骤二:创建LoongCollector采集配置

  1. 登录日志服务控制台

  2. 接入数据区域,选择JSON-文本日志
  3. 选择目标ProjectLogstore,单击下一步
  4. 创建机器组。

    1. 单击主机场景 > ECS > 创建机器组,在创建机器组面板中,选择与Project同地域的ECS实例,单击创建机器组

      如果ECS与日志服务不同地域,如果Zabbix是安装在自建集群或其他云厂商服务器上,需要手动安装。具体操作,请参见LoongCollector安装(Linux)

      image

    2. 等待安装完成,填写名称后单击确定

    3. 点击下一步,如果心跳为FAIL,点击自动重试后等待两分钟左右直到心跳变为OK,点击下一步。此处自动安装LoongCollector同时也为您配置了IP类型机器组,如果您希望修改为用户自定义标识机器组,您可以参考机器组与LoongCollector采集配置关联指南image

  5. 创建采集配置,单击下一步

    Zabbix监控数据为JSON类型,所以推荐使用JSON模式进行数据采集。其中日志路径需设置为您在步骤一:配置数据存储路径中设置的数据存储路径,其他参数详情请参见使用JSON模式采集日志

    logtail采集配置

  6. 日志服务默认开启全文索引。您也可以根据采集到的日志,手动创建字段索引,或者单击自动生成索引,日志服务将自动生成字段索引。更多信息,请参见创建索引

    image

  7. 查询分析日志。

    单击查询日志,系统将跳转至Logstore查询分析页面。image

    您需要等待1分钟左右,待索引生效后,才能在原始日志页签中,查看已采集到的日志。查询和分析日志的详细步骤,请参见查询与分析快速指引

    说明

    如果需要查询日志中的所有字段,建议使用全文索引。如果只需查询部分字段、建议使用字段索引,减少索引流量。如果需要对字段进行分析(SELECT语句),必须创建字段索引。