Filebeat中文指南
Filebeat中文指南
翻译自:https://www.elastic.co/guide/en/beats/filebeat/current/index.html
译者:kerwin
鸣谢:tory chuck
一、概述
Filebeat是一个日志文件托运工具,在你的服务器上安装客户端后,filebeat会监控日志目录或者指定的任职文件,追踪读取这些文件(追踪文件的变化,不停的读),并且转发这些信息到elasticsearch或者logstarsh中存放。
以下是filebeat的工作流程:当你开启filebeat程序的时候,它会启动一个或多个探测器(prospectors)去检测你指定的日志目录或文件,对于探测器找出的每一个日志文件,filebeat启动收割进程(harvester),每一个收割进程读取一个日志文件的新内容,并发送这些新的日志数据到处理程序(spooler),处理程序会集合这些事件,最后filebeat会发送集合的数据到你指定的地点。

二、Filebeat入门
开始配置使用filebeat之前,你需要安装并配置好这些依赖程序:
Elasticsearch 作为存储和索引这些数据。
Kibana 作为展示平台。
Logstash(可选)去插入数据到elasticsearch。
在安装完毕elastic集群之后,阅读接下来的选项学习怎样安装,配置,与运行filebeat。
第一步:安装filebeat
请选择你系统中的下载安装命令来下载安装filebeat。(deb for Debian/Ubuntu, rpm for Redhat/Centos/Fedora, mac for OS X, and win for Windows).
如果你使用yum或者apt,你可以从我们的安装仓库中更方便的安装或更新到新版本。
deb:
curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-5.1.1-amd64.deb
sudo dpkg -i filebeat-5.1.1-amd64.deb
rpm:
curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-5.1.1-x86_64.rpm
sudo rpm -vi filebeat-5.1.1-x86_64.rpm
mac:
curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-5.1.1-darwin-x86_64.tar.gz
tar xzvf filebeat-5.1.1-darwin-x86_64.tar.gz
win:
略。
第二步:配置filebeat
编辑配置文件来配置filebeat,对于rpm或者deb来说,配置文件是/etc/filebeat/filebeat.yml这个文件,对于MAC或者win来说,请查看你的解压文件中。
这里有一个简单的filebeat的配置文件filebeat.yml的样本,filebeat会使用很多默认的选项。
filebeat.prospectors:
- input_type: log
paths:
- /var/log/*.log
#- c:\programdata\elasticsearch\logs\*
让我们来配置filebeat:
1、定义你的日志文件的路径(一个或多个)
对于大多数的基本filebeat配置,你可以定义一个单一探测器针对一个单一的路径,例如:
filebeat.prospectors:
- input_type: log
paths:
- /var/log/*.log
在这个例子中,探测器会收集/var/log/*.log的所有匹配文件,这意味这filebeat会手机所有的/var/log下以.log结尾的文件,此处还支持Golang Glob支持的所有模式。
在预定义级别的子目录中获取所有文件,可以使用这个配置:/var/log/*/*.log,这会找到/var/log下所有子目录中所有的以.log结尾的文件。但它并不会找到/var/log文件夹下的以.log结尾的文件。现在它还不能递归的在所有子目录中获取所有的日志文件。
如果你设置输出到elasticsearch中,那么你需要在filebeat的配置文件中设置elasticsearch的IP地址与端口。
output.elasticsearch:
hosts: ["192.168.1.42:9200"]
如果你设置输出到logstarsh,那么请参考第三步,配置filebeat使用logstarsh
第三步:配置filebeat使用logstarsh
如果要使用logstash对filebeat收集起来的数据执行其他处理,你需要配置filebeat使用logstash。
你需要编辑filebeat的配置文件,注释elasticsearch的选项,并打开logstash的配置的注释:
#----------------------------- Logstash output --------------------------------
output.logstash:
hosts: ["127.0.0.1:5044"]
hosts选项需要指明logstash服务所监听的地址和它的端口。
对于这个配置,你必须手动将索引模板加载到elasticsearch中,因为自动加载模板的选项仅适用于Elasticsearch输出。
注:若要测试你的配置文件,切换到你安装好的filebeat的可执行文件的目录,然后在命令行运行以下选项:./filebeat -configtest -e ,确保您的配置文件在默认配置文件目录下,见 目录布局。
在使用这个配置之前,你需要提前设置好logstash来接收数据。
第四步:在elasticsearch中加载索引模板
在Elasticsearch中,索引模板是用于定义字段应如何分析的设置和映射。
推荐的filebeat索引模板文件已经在filebeat的安装包中了,如果你允许默认的模板加载到配置文件filebeat.yml中,filebeat会在成功链接elasticsearch后自动加载这些模板。如果模板已经存在了,除非你配置了filebeat.yml,否则它不会被复写。
如果你不想自动加载索引模板,或者你想加载你自己的索引模板,你你可以在filebeat的配置文件中改变模板的配置,如果你选择了关闭自动加载模板,你需要手动加载模板。更多的信息请看:
配置模板加载:只支持输出到elasticsearch
手动加载模板:需要输出到logstash时
配置模板加载
默认上,filebeat自动加载推荐的模板文件,filebeat.template.json,如果禁用输出到elasticsearch,你可以配置filebeat.yml中的template.name和template.path选项:
output.elasticsearch:
hosts: ["localhost:9200"]
template.name: "filebeat"
template.path: "filebeat.template.json"
template.overwrite: false
默认上,如果索引里已经有这个模板,新的并不会覆盖旧的。若是想覆盖现有的模板,在配置文件中设置template.overwrite:ture。
若禁用自动加载模板,注释掉elasticsearch输出下模板的那一部分。
如果使用Logstash输出,则不支持自动加载模板的选项。
手工加载模板
如果你禁止了模板的自动加载,你需要运行接下来的命令来加载模板:
curl -XPUT 'http://localhost:9200/_template/filebeat' -d@/etc/filebeat/filebeat.template.json
这里的location:9200是elasticsearch监听的ip和端口
注:如果你已经使用filebeat输出索引数据到elasticsearch中,这些索引可能包含旧的文档,在你加载了索引模板后,你可以从filebeat-*中删除旧的文档,以强制kibana查看新的索引文档。
命令如下:
curl -XDELETE 'http://localhost:9200/filebeat-*'
第五步:启动filebeat
rpm安装:
sudo /etc/init.d/filebeat start
现在,filebeat已经准备好读取你的日志文件并发送到你定义的输出中了!
Filebeat中文指南的更多相关文章
- ELKStack的基础入门和中文指南
一.ELKStack的中文指南 redhat系列配置repo源 rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch vi / ...
- ELKstack 中文指南
https://www.elastic.co/downloads ELKstack 中文指南 .net Elasticsearch 学习入门笔记 一. es安装相关1.elasticsearch安 ...
- Kali Linux安装及中文指南
Kali Linux安装及中文指南 Kali Linux安装教程:https://blog.csdn.net/u012318074/article/details/71601382 Kali Linu ...
- Day05 - Flex 实现可伸缩的图片墙 中文指南
Day05 - Flex 实现可伸缩的图片墙 中文指南 作者:liyuechun 简介:JavaScript30 是 Wes Bos 推出的一个 30 天挑战.项目免费提供了 30 个视频教程.30 ...
- 苹果应用商店AppStore审核中文指南
目录 1. 条款与条件2. 功能3. 元数据.评级与排名4. 位置5. 推送通知6. 游戏中心7. 广告8. 商标与商业外观9. 媒体内容10. 用户界面11. 购买与货币12. 抓取与聚合13. 设 ...
- 苹果应用商店AppStore审核中文指南 分类: ios相关 app相关 2015-07-27 15:33 84人阅读 评论(0) 收藏
目录 1. 条款与条件 2. 功能 3. 元数据.评级与排名 4. 位置 5. 推送通知 6. 游戏中心 7. 广告 8. 商标与商业外观 9. 媒体内容 10. 用户界面 11. 购买与货币 12. ...
- Hugo 博客中文指南(基础教程)
1. 安装 Hugo 从 Hugo 项目主页下载 Releases 文件,解压 hugo.exe 文件到 C:\Windows\System32 目录下. 2. 创建站点 hugo new site ...
- Webpack 中文指南
来源于:http://webpackdoc.com/index.html Webpack 是当下最热门的前端资源模块化管理和打包工具.它可以将许多松散的模块按照依赖和规则打包成符合生产环境部署的前端资 ...
- Elasticsearch + logstash中文指南
http://kibana.logstash.es/content/logstash/examples/nginx-access.html http://es.xiaoleilu.com/030_Da ...
随机推荐
- yii cgridview 如何显示图片
发布的新闻或介绍里有图片,图片存的是Url地址,通过yii的cgridview,默认是数据库里存的啥就显示啥,如何把url地址转为图片?直接上代码 <?php $data = $model-&g ...
- 一个好用的Python备份mysql的脚本
前几天打算用Python写一个mysql脚本,上Google看了下老外写的,写的挺好的,原地址在http://tecadmin.net/python-script-for-mysql-database ...
- java集合框架03
Collections工具类的使用 public class News implements Comparable { private int id; //新闻编号 private String ti ...
- Navicat:cant create OCI environment.
一直在使用 Navicat ,这是一个数据库客户端软件,能连接多种不同类型的数据库,给我们的日常的工作带来了不少的便捷. 最近,我在电脑上安装了oracle的客户端ODTwihtODAC121012, ...
- Design Pattern —— Prototype /Template Method/Iterator/Composite/Bridge
Prototype /Template Method/Iterator/Composite/Bridge 为什么把这五种设计模式放一起呢,没什么太高大上的原因,就是因为这五种模式JAVA开发最基本的特 ...
- 如何完全卸载SQL Server 2005
用过SQL Server 2005的朋友都应该知道,不管是安装还是完全卸载都是件很头疼的事情. 下面跟大家分享一下如何完全卸载SQL Server 2005(手动卸载步骤哦~~). 一.停止sql的服 ...
- js页面跳转
js方式的页面跳转1.window.location.href方式 <script language="javascript" type="text/java ...
- java数据库连接类,已经把数据库操作的方法都封装好了
在这里分享一个已经封装好了的java数据库连接类,只要创建对象就可以实现数据库的增删改查操作,用过都说好.其实这个不是我自己写的,是一个理解和学习能力超高的朋友写的,他也很乐于分享交流,本人也深受他的 ...
- 去掉eclipse上编辑时的提示
用eclipse时,鼠标移到类上时会给出提示,如下图:
- Max Min Middle
/*三者中的中间数*/#define Max(a,b) (a>b?a:b) #define Min(a,b) (a<b?a:b) int MiddleOfThree(int a, int ...