在ELK中因为logstash是在jvm上跑的,资源消耗比较大,对机器的要求比较高。而Filebeat是一个轻量级的logstash-forwarder,在服务器上安装后,Filebeat可以监控日志目录或者指定的日志文件,然后将这些信息到发送给logstarsh或直接发送给elasticsearch。当发送数据到Logstash或Elasticsearch时,Filebeat使用一个反压力敏感(backpressure-sensitive)的协议来解释高负荷的数据量。当Logstash数据处理繁忙时,Filebeat放慢它的读取速度。一旦压力解除,Filebeat将恢复到原来的速度,继续传输数据。

  Filebeat目前已经是Elastic Stack非常重要的组成部分了。

  闲话少说,先来看一下filebeat怎么安装配置吧。

  官网地址:https://www.elastic.co/guide/en/beats/filebeat/current/index.html

  一、 安装流程

  在linux中的安装相当简单,在此主要说一下windows中的安装和配置:

  1. 下载软件

   下载地址:https://www.elastic.co/downloads/beats/filebeat   选择相应的版本下载即可。

  2. 下载后解压软件到C:\Program Files 并将文件夹更名为filebeat

  3. 以管理员身份运行powershell

PS C:\Windows\system32> cd 'C:\Program Files\Filebeat\'
PS C:\Program Files\Filebeat> .\install-service-filebeat.ps1

  4. 安装服务后只需要在配置一下filebeat.yml,然后启动filebeat服务即可

  二、配置Filebeat

  下面是本人实际项目中一个配置:

filebeat.prospectors:

- type: log
enabled: true #一定要启用
paths:
- D:\web\webapi\log\* #日志路径
document_type: "webapi" #指定类型 在elastic中可通过[type]识别
fields:
tag: webapi #指定标签 在logstahs中可通过[fields][tag]识别 - type: log #一定不要省略前面的- 血的教训
enabled: true
paths:
- D:\web\webmanage\log\*
document_type: "webmanage"
fields:
tag: webmanage - type: log
enabled: true
paths:
- D:\web\webuser\Log\*
document_type: "webuser"
fields:
tag: webuser #-------------------------- Elasticsearch output ------------------------------
output.elasticsearch:
# Array of hosts to connect to.
hosts: ["192.168.1.2:9200"] #指定ES的路径和端口即可 # Optional protocol and basic auth credentials.
#protocol: "https"
#username: "elastic" #可为ES配置验证信息
#password: "changeme" #----------------------------- Logstash output --------------------------------
output.logstash:
# The Logstash hosts
hosts: ["192.168.1.1:5044"] #指定Logstash的地址

以上配置的是将FileBeat读取的日志传输到Logstash,对应的LogStash中的配置如下:

input
{
beats
{
port =>
}
}
output
{
if [fields][tag] == "webapi"
{
elasticsearch
{
hosts => ["192.168.1.2:9200"]
index => "webapi-%{+YYYY.MM.dd}"
}
}
if [fields][tag] == "webmanage"
{
#stdout { codec => rubydebug }
elasticsearch
{
hosts => ["192.168.1.2:9200"]
index => "webmanage-%{+YYYY.MM.dd}"
}
}
if [fields][tag] == "webuser"
{
elasticsearch
{
hosts => ["192.168.1.2:9200"]
index => "webuser-%{+YYYY.MM.dd}"
}
}

这样通过[fields][tag]标识不同的日志来源和类型,可以针对性的进行日志处理,在Elastic中就可以建不同的索引文件

FileBeat安装配置的更多相关文章

  1. ELK 架构之 Logstash 和 Filebeat 安装配置

    上一篇:ELK 架构之 Elasticsearch 和 Kibana 安装配置 阅读目录: 1. 环境准备 2. 安装 Logstash 3. 配置 Logstash 4. Logstash 采集的日 ...

  2. ELK 架构之 Elasticsearch、Kibana、Logstash 和 Filebeat 安装配置汇总(6.2.4 版本)

    相关文章: ELK 架构之 Elasticsearch 和 Kibana 安装配置 ELK 架构之 Logstash 和 Filebeat 安装配置 ELK 架构之 Logstash 和 Filebe ...

  3. 第二篇:Filebeat 安装配置

    Filebeat 简介:Filebeat 是一款轻量型日志收集工具,可转发汇总日志.文件等内容.                         其主要特点为:1. 断点续传.(如遇日志转发过程中网络 ...

  4. ELK+Filebeat 安装配置入门

    本文地址 http://www.cnblogs.com/jasonxuli/p/6397244.html   https://www.elastic.co 上,elasticsearch,logsta ...

  5. elk安装配置

    ELK介绍   官网https://www.elastic.co/cn/ 中文指南https://www.gitbook.com/book/chenryn/elk-stack-guide-cn/det ...

  6. ELK 6安装配置 nginx日志收集 kabana汉化

    #ELK 6安装配置 nginx日志收集 kabana汉化 #环境 centos 7.4 ,ELK 6 ,单节点 #服务端 Logstash 收集,过滤 Elasticsearch 存储,索引日志 K ...

  7. ELk(Elasticsearch, Logstash, Kibana)的安装配置

    目录 ELk(Elasticsearch, Logstash, Kibana)的安装配置 1. Elasticsearch的安装-官网 2. Kibana的安装配置-官网 3. Logstash的安装 ...

  8. ELK6.x_Kafka 安装配置文档

    1. 环境描述 1.1.   环境拓扑 如上图所示:Kafka为3节点集群负责提供消息队列,ES为3节点集群.日志通过logstash或者filebeat传送至Kafka集群,再通过logstash发 ...

  9. 玩转ELK之三件套安装配置详解

    ELK是啥子??? ELK 是elastic公司提供的一套完整的日志收集以及展示的解决方案,是三个产品的首字母缩写,分别是ElasticSearch.Logstash 和 Kibana. 特点: 收集 ...

随机推荐

  1. oracle修改表列名和列类型

    --修改列名alter table 表名 rename column 旧列名 to 新列名;--修改列类型alter table 表名 modify (列名varchar(255));

  2. js动态生成二维码

    一.使用jquery.qrcode生成二维码 1.首先在页面中加入jquery库文件和qrcode插件 <script type="text/javascript" src= ...

  3. php的底层原理

    PHP说简单,但是要精通也不是一件简单的事.我们除了会使用之外,还得知道它底层的工作原理. PHP是一种适用于web开发的动态语言.具体点说,就是一个用C语言实现包含大量组件的软件框架.更狭义点看,可 ...

  4. Asp.net mvc 中View的呈现(一)

    [toc] 我们知道针对客户端的请求,最终都会转换为对 Controller 中的一个 Action 方法的调用,指定的 Action 方法会返回一个 ActionResult 类型的实例来响应该请求 ...

  5. ios 一步一步学会自定义地图吹出框(CalloutView)-->(百度地图,高德地图,google地图)

    前言 在 ios上边使用地图库的同学肯定遇到过这样的问题:吹出框只能设置title和subtitle和左右的view,不管是百度地图还是高德地图还是自带的 google地图,只提供了这四个属性,如果想 ...

  6. MySQL Block Nested Loop and Batched Key Access Joins(块嵌套循环和批量Key访问连接)

    Block Nested-Loop and Batched Key Access Joins Batched Key Access (BKA) Join算法通过index和join buffer访问j ...

  7. Java 获取年 月 日 时 分 秒

    /** * 英文简写(默认)如:2010-12-01 */ public static String FORMAT_SHORT = "yyyy-MM-dd"; /** * 英文全称 ...

  8. python_如何实现可迭代对象和迭代器对象?

    什么是可迭代对象? 列表.字符串 for循环的本质? for循环要确保in后面的对象为可迭代对象,如何确保? iter() 方法得到一个迭代器对象 不停.__next__() 方法对迭代器对象进行迭代 ...

  9. [Git] git log命令

    这是git的新系列,不常用的命令和其参数比较容易记不住,干脆将常用的记录下来,日后查查方便也是好的,一篇文章一个git命令,长短根据命令有所不同. git log命令主要用于查看提交历史,同时根据添加 ...

  10. linkinFrame--测试项目添加git管理

    OK,前面一篇博客,已经搭建好了项目的基础的结构.现在我们添加一个简单的servlet来测试下项目能不能跑,然后在讲项目添加到coding上用git管理. 1,我们编写一个servlet,编写一个js ...