一、windows下安装Filebeat

官网下载安装包

解压到指定目录,打开解压后的目录,打开filebeat.yml进行配置。

1、配置为输出到ElasticSearch

①:配置 Filebeat  prospectors->path 这里的路径是所要收集日志的路径 。。eg:在当前目录下建一个data文件夹,里面放下载的示例文件(在Logstash那篇),人家应该是linux下的文件。

我这里将下载的日志文件 加了后缀.log ,放在data目录下

所以我的配置如下:

- type: log

  # Change to true to enable this input configuration.
enabled: true # Paths that should be crawled and fetched. Glob based paths.
paths:
- E:\filebeat-6.6.2-windows-x86_64\data\logstash-tutorial.log\*.log
#- c:\programdata\elasticsearch\logs\*

②:配置 enabled: true 这个配置很重要,只有配置为true之后配置才可生效,否则不起作用。 
③:配置Outputs ,这里的Outputs有elasticsearch,logstash。按照配置文件下面的示例配置即可。只能配置一个输出。默认是ElasticSearch

output.elasticsearch:
# The Logstash hosts
hosts: ["localhost:9200"]
默认情况下,Filebeat写事件到名为filebeat-6.3.2-yyyy.MM.dd的索引,其中yyyy.MM.dd是事件被索引的日期。为了用一个不同的名字,你可以在Elasticsearch输出中设置index选项。

2、cmd运行

  然后在当前目录下,新建一个bat文件,eg : run.bat  内容

.\filebeat -e -c filebeat.yml 

单击bat,启动filebeat

正常情况下,应该有个链接ES的过程,将数据输出到es。

打开ES能看到多了一个filebeat-6.6.2-年月日的索引。。

若没有这个,而是一直Non-zero metrics inthe last 30s。这个时间参数是个扫描文件的频率,可以修改。那就要看下 配置的路径对不对。命令行中会有读取的文件的路径信息,仔细检查一下。

3、安装为服务启动

  filebeat目录下有POWERSHELL脚本(install-service-filebeat.ps1),运行一下即可。将Powershell脚本的默认打开方式选择为Powershell.exe,直接运行。然后在服务中启动。

4、其他

  • 配置Filebeat以使用Logstash 【在logstash中有讲】

如果你想使用Logstash对Filebeat收集的数据执行额外的处理,那么你需要将Filebeat配置为使用Logstash。

output.logstash:
hosts: ["127.0.0.1:5044"]
  • 如果你打算用Kibana仪表盘,可以这样配置Kibana端点:
setup.kibana:
host: "localhost:5601"

更多配置参数,查看官网

二、工作原理

  Filebeat是使用GO语言开发,由两个主要组件组成:prospector 和harvester。这些组件一起工作来读取文件(tail file)并将事件数据发送到您指定的输出。

工作原理如下:当Filebeat启动时,它会启动一个或者多个prospector监控日志路径或日志文件,每个日志文件会有一个对应的harvester,harvester按行读取日志内容并转发至后台程序。Filebeat维护一个记录文件读取信息的注册文件,记录每个harvester最后读取位置的偏移量。

Filebeat配置

下面是一个简单的Filebeat配置,采集2个文件夹下的日志并转发至Logstash。

filebeat:
prospectors:
-
paths:
- /dir1/access_log.*
input_type: log
document_type: dir1_log
-
paths:
- /dir2/ofbiz.log.*
input_type: log
document_type: dir2_log
output:
logstash:
hosts: ["10.90.4.9:5044"]

在Logstash中根据 document_type定义解析日志的正则并输出到ELasticsearch集群。

input {
beats{
host => "192.2.11.145"
port => 5044
}
}
filter {
if[type]=="dir1_log"{
grok {
match => { "message" => "%{COMBINEDAPACHELOG}"}
}
} else if ([type]=="dir2_log") {
grok {
match => { "message" => "%{TIMESTAMP_ISO8601:time}\s*%{NUMBER:logtime} \[\s*%{JAVAFILE:class}\:%{NUMBER:lineNumber}\s*\:%{LOGLEVEL:level}\s*\]\s*(?<info>([\s\S]*))"}
}
}
}
output {
elasticsearch {
hosts => ["10.90.4.9","10.90.4.8","10.90.4.7"]
}
}

中文翻译的配置参数:Filebeat6.3文档—Log input配置

更多参考官网学习

Filebeat在windows下安装使用的更多相关文章

  1. 在windows下安装gulp —— 基于 Gulp 的前端集成解决方案(一)

    相关连接导航 在windows下安装gulp —— 基于 Gulp 的前端集成解决方案(一) 执行 $Gulp 时发生了什么 —— 基于 Gulp 的前端集成解决方案(二) 常用 Gulp 插件汇总 ...

  2. Windows 下安装 MongoDB

    Windows 下安装 MongoDB 的步骤:1.官网www.mongodb.com下载安装包或zip包2.解压下载的文件到文件夹 D:\mongo .3.使用管理员权限打开CMD,导航到目录 D: ...

  3. Coreseek Windows下安装调试

    由于项目需要全文检索,后面就去网上查了下资料,找到了Sphinx[中文是狮身人面像]这个全文检索引擎,听说挺好用的,不过没有中文分词.后面又去找了一下,找到了Coreseek,一款中文全文检索/搜索软 ...

  4. 从零开始学 Java - Windows 下安装 Tomcat

    谁都想分一杯羹 没有一个人是真正的无私到伟大的,我们试着说着做自己,与人为善,世界和平!殊不知,他们的真实目的当你知道后,你会被恶心到直摇头并下意识地迅速跑开,下辈子都不想见到他.不过,他没错,你也没 ...

  5. 从零开始学 Java - Windows 下安装 JDK

    关于未来 "我要死在火星.在我死去的时候能够想着人类能有一个美好的未来--有可持续的能源,同时能够殖民其他的星球来避免人类灭绝的最坏可能." 官网下载 直接打开官网:http:// ...

  6. windows下安装nginx

    说起开发,自己感到非常惭愧,由于公司让我给<绿电侠>项目写整体架构解决方案,才开始接触nginx这个东东,突然觉得它是一把非常好的利器. 本文主要记录在windows下安装nginx,另参 ...

  7. Redhat/Ubuntu/Windows下安装Docker

    Redhat/Ubuntu/Windows下安装Docker 什么是Docker Docker是Docker.inc公司开源的一个基于LXC技术之上构建的Container容器引擎,基于Go语言并遵从 ...

  8. Windows下安装Redis

    1.首先,Redis官方是支持Linux系统的,我这里不多说,需要的可以参考:http://www.oschina.net/question/12_18065/ 2.Windows 64位下载地址:h ...

  9. 【转】linux和windows下安装python集成开发环境及其python包

    本系列分为两篇: 1.[转]windows和linux中搭建python集成开发环境IDE 2.[转]linux和windows下安装python集成开发环境及其python包 3.windows和l ...

随机推荐

  1. Vue.js 2.x render 渲染函数 & JSX

    Vue.js 2.x render 渲染函数 & JSX Vue绝大多数情况下使用template创建 HTML.但是比如一些重复性比较高的场景,需要运用 JavaScript 的完全编程能力 ...

  2. mybatis内置参数及foreach使用

  3. Spring Cloud--服务的发布与调用示例

    [Provider] 引依赖: 启动类上添加注解: 配置文件: [Consumer] 引依赖: 加注解: 配置文件: 调用服务: 方式一(动态获取服务列表): Eureka默认30秒拉取一次服务列表. ...

  4. centos7 设置静态ip , 并开机联网

    修改 /etc/sysconfig/network-scripts 下的文件 我的是ens32 (不同系统这个文件名字不一样) 内容如下 TYPE=Ethernet PROXY_METHOD=none ...

  5. 面试4 --- constructor必须与class同名,但方法不能与class同名?

    选 C “constructor必须与class同名,但方法不能与class同名”这句话是错误的,方法是可以和class同名的:方法可以和类名同名的,和构造方法唯一的区别就是,构造方法没有返回值.

  6. 【洛谷 P2633】 Count on a tree(主席树,树上差分)

    题目链接 思维难度0 实现难度7 建出主席树后用两点的状态减去lca和lca父亲的状态,然后在新树上跑第\(k\)小 #include <cstdio> #include <cstr ...

  7. asBroadcastStream

    StreamSubscription sc = StreamSubscription(); Stream s = Stream(); sc.addStream(s); var bs = sc.stre ...

  8. 解决 Orange Pi 烧录完系统后剩余可用空间过少的问题

    输入命令 df -ha 这图是拿别人的 看到系统才使用3.2g,内存卡有16g,不可能满的. 执行命令,加上sudo,防止权限不够: sudo fs_resize 如果上面那个不行的话,试试这个命令( ...

  9. adb命令获取app布局文件xml

    adb shell /system/bin/uiautomator dump --compressed /data/local/tmp/uidump.xml adb pull /data/local/ ...

  10. 设置yum自动更新

    [wang@brady ~]$ sudo yum -y install cronie yum-cron sudo vim /etc/yum/yum-cron.conf apply_updates = ...