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 ...
随机推荐
- 3_Linux_文件搜索指令
.3文件搜索命令 1)which 查找一个命令所在的路径 whereis 提供命令的帮助文件的信息 whatis 显示命令的概要信息whatis ls which提供命令的别名信息 2)find,基本 ...
- c# 字符串编码问题
一. ASCII码 我们知道,在计算机内部,所有的信息最终都表示为一个二进制的字符串.每一个二进制位(bit)有0和1两种状态,因此八个二进制位就可以组合出256种状态,这被称为一个字节(byte). ...
- 设计模式:模版模式(Template Pattern)
android中的Activity框架,View框架中大量的on函数基本上都应用到了Template模式,掌握这一模式对于理解这些框架大有裨益. 模版模式 又叫模板方法模式,在一个方法中定义一个算法的 ...
- eclipse - copy类的全名
由于多次操作,感觉eclipse应该提供这个功能,网上搜一下,发现需要安装插件. 下载地址为 http://www.jave.de/eclipse/copyfully/copyfully_1.2.0. ...
- solr单机版的搭建
一.solr单机版的搭建 1.运行环境 solr 需要运行在一个Servlet容器中,Solr4.10.3要求jdk使用1.7以上,Solr默认提供Jetty(ja),本教va写的Servlet容器程 ...
- cocoapods出现Diff: /../Podfile.lock: No such file or directory错误
第一种解决方法: 关闭Xcode,重新执行pod install,之后再重新打开Xcode运行. 第二种解决方法: 删除以下文件: xcworkspacePodfile.lockPods文件夹~/Li ...
- HP SimpleXML
PHP SimpleXML PHP SimpleXML 处理最普通的 XML 任务,其余的任务则交由其它扩展处理. 什么是 PHP SimpleXML? SimpleXML 是 PHP 5 中的新特性 ...
- 使用C#代码追加和提交文件到SVN服务器
windows系统下使用svn的命令需要安装一个插件,下载地址:http://sourceforge.net/projects/win32svn/?source=typ_redirect 安装后程序会 ...
- C++中的函数指针
寒假这些天在看<The C++ Programming Language, 3rd>. 今天看到Chapter7 Function,里头好一些东西是C语言里没有的,比如overload.p ...
- 1106关于解决erp单个商品同步的问题
1.断点测试: 不断的利用echo "<pre>"; print_r();die;来测试问题出在哪? 先找问题出错点,再找出具体的细节. --------------- ...