Skip to content
Sun Jianbo edited this page Aug 29, 2018 · 54 revisions

在社区版的基础上,我们开发了体验更好,功能更全的专业版(logkit-pro),欢迎大家体验 logkit-pro(专业版)

迁移文档: https://developer.qiniu.com/insight/manual/5040/migrated-from-the-open-source-logkit-logkit-pro


logkit-community快速开始

简介

logkit-community(社区版)是七牛智能日志管理平台开发的一个配套的日志收集工具,支持海量的数据源,方便地发送到七牛智能日志管理平台以及其他常见的数据存储服务进行分析,同时也,除了基本的数据发送功能,logkit还有容错、并发、监控、删除等功能。 。

下载

请移步至Download页面

升级

后端升级

  • 方法一. 下载并解压logkit包后,将已经在运行的logkit二进制包替换为解压后的logkit二进制包,重启logkit。
  • 方法二. 停止logkit,执行命令 logkit -upgrade,启动logkit。

升级后,配置文件不会变,重启也不会造成任何数据丢失

前端升级

  • 停止运行 logkit,下载并解压 logkit 包后,将 logkit 指定的 public 文件夹替换为解压后的 logkit 二进制包中的 public 文件夹,重新启动logkit。

收集数据 支持的数据源

  1. File: 读取文件中的日志数据,包括csv格式的文件,kafka-rest日志文件,nginx日志文件等,并支持以grok的方式解析日志。
  2. Elasticsearch: 读取ElasticSearch中的数据。
  3. MongoDB: 读取MongoDB中的数据。
  4. MySQL: 读取MySQL中的数据。
  5. MicroSoft SQL Server: 读取Microsoft SQL Server中的数据。
  6. Postgre SQL: 读取 PostgreSQL 中的数据。
  7. Kafka: 读取Kafka中的数据。
  8. Redis: 读取Redis中的数据。
  9. Socket: 读取tcp\udp\unixsocket协议中的数据。
  10. Http: 作为 http 服务端,接受 POST 请求发送过来的数据。
  11. Script: 支持执行脚本,并获得执行结果中的数据。
  12. Snmp: 主动抓取 Snmp 服务中的数据。
  13. CloudWatch: 主动获取AWS CloudWatch 接口中的数据。

发送数据 支持的发送服务端

  1. Pandora Sender: 发送到Pandora(七牛大数据处理平台)。
  2. Elasticsearch Sender: 发送到ElasticSearch。
  3. File Sender: 发送到本地文件。
  4. InfluxDB Sender: 发送到InfluxDB。
  5. MongoDB Accumulate Sender: 聚合后发送到MongoDB。
  6. Kafka Sender: 发送到Kafka。
  7. Http Sender: 以 Http POST 请求的方式发送数据。

数据解析与变换

  1. Parsers:针对整体数据的解析,支持包括json、csv、grok等大多数主流日志解析方式。
  2. Transforms: 针对字段做数据变换, 支持包括字符串操作、ip扩展等多种数据变换方式。

监控信息采集

  • 系统监控信息采集:包含数十类上百种系统指标的采集。
  • [其他常用组件信息采集]:待发布,敬请期待。

集群化功能

logkit支持通过集群化的方式管理,批量管理所有机器的数据收集任务,详情参见logkit Cluster功能介绍

典型使用场景

  1. 收集业务日志(包括nginx等基础组件日志)至Pandora进行大数据分析
  2. 将MongoDB/MySQL/MSSQL/ElasticSearch/Kafka中的数据导入Pandora进行大数据分析

工作方式

Logkit本身支持多种数据源,并且可以同时发送多个数据源的数据到Pandora,每个数据源对应一个逻辑上的runner,一个runner负责一个数据源的数据推送,工作原理如下图所示

Logkit 工作原理图

使用方式

  1. 下载&解压logkit工具

Linux 版本

export LOGKIT_VERSION=<version number>
wget https://pandora-dl.qiniu.com/logkit_${LOGKIT_VERSION}.tar.gz && tar xvf logkit_${LOGKIT_VERSION}.tar.gz && rm logkit_${LOGKIT_VERSION}.tar.gz && cd _package_linux64/

MacOS 版本

export LOGKIT_VERSION=<version number>
wget https://pandora-dl.qiniu.com/logkit_mac_${LOGKIT_VERSION}.tar.gz && tar xvf logkit_mac_${LOGKIT_VERSION}.tar.gz && rm logkit_mac_${LOGKIT_VERSION}.tar.gz && cd _package_mac/

Windows 版本

请下载 https://pandora-dl.qiniu.com/logkit_windows_<LOGKIT_VERSION>.zip 并解压缩,进入目录

  1. 修改logkit基本配置
打开 logkit.conf

logkit.conf是logkit工具基础配置文件,主要用于指定logkit运行时需要的资源和各个runner配置文件的具体路径。

典型的配置如下:

{
	"max_procs": 8,
	"debug_level": 1,
	"clean_self_log":true,
	"bind_host":"localhost:3000",
	"static_root_path":"./public",
	"confs_path": ["confs*"]
}

初步使用,你只需要关注并根据实际需要修改其中三个选项:

  1. bind_host logkit页面绑定的端口后,启动后可以根据这个页面配置logkit。

  2. static_root_path logkit页面的静态资源路径,强烈建议写成绝对路径

  3. confs_path 除了通过页面配置添加以外,logkit还支持直接监控文件夹添加runner。(如果你只通过页面添加logkit runner,那么无需修改此配置) 列表中的每一项都是一个runner的配置文件夹,如果每一项中文件夹下配置发生增加、减少或者变更,logkit会相应的增加、减少或者变更runner,配置文件夹中的每个配置文件都代表了一个runner。该指定了一个runner的配置文件夹,这个配置文件夹下面每个以.conf结尾的文件就代表了一个运行的runner,也就代表了一个logkit正在运行的推送数据的线程。

  4. 启动logkit工具

./logkit -f logkit.conf
  1. 通过浏览器打开logkit配置页面

浏览器访问的地址就是您在第2步中填写的 bind_host 选项地址

  • 首页查看正在运行的logkit状态,或者添加新的logkit Runner

查看并添加

  • 根据页面配置数据源、配置解析方式、配置发送方式

配置数据源

  • 在配置解析方式的页面您还可以根据配置尝试解析您的样例数据

尝试解析

  • 除了解析以外,您可以可以针对解析出来的某个字段内容做数据变换(Transform),可以像管道一样多个拼接。

  • 填写必要信息以配置数据发送

发送

  • 最后在确认并添加页面点击生成配置文件,再点击添加Runner即可生效

添加runner

更多配置相关内容,请参阅logkit wiki中对应页面内容。

logkit star 趋势图

Stargazers over time

Clone this wiki locally