博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
FileBeat6.4 快速上手
阅读量:7193 次
发布时间:2019-06-29

本文共 3230 字,大约阅读时间需要 10 分钟。

简介:

Filebeat 是一款轻量级的日志传输工具,它有输入和输出两端,通常是从日志文件中读取数据,输出到 Logstash 或 Elasticsearch 。其作用是收集业务服务器的日志,输出到一个日志系统便于集中管理。

官网:

安装

系统环境:Centos6.x

软件版本:filebeat-6.4.0-x86_64.rpm

直接从官网下载 RPM 包,使用 rpm -ivh filebeat-6.4.0-x86_64.rpm 安装即可。

配置

  • 主配置文件 /etc/filebeat/filebeat.yml
###################### Filebeat Configuration Example ##########################=========================== Filebeat inputs =============================filebeat.inputs:# Each - is an input. Most options can be set at the input level, so# you can use different inputs for various configurations.# Below are the input specific configurations.# 这里每一个 type 表示定义了一个日志读取源,这个源是收集 Nginx 的访问日志- type: log  enabled: true  paths:    - /usr/log/nginx/access/access.log  fields_under_root: true  fields:     alilogtype: nginxacclog# 收集某一个服务的错误日志- type: log  enabled: true  paths:    - /var/www/service/storage/logs/error.log  fields_under_root: true  fields:     alilogtype: service_error    serverip: ${serverip}# 收集某一个服务的错误日志,并且使用了多行合并- type: log  enabled: true  paths:    - /var/www/user_center/storage/logs/SERVER*.log  fields_under_root: true  fields:     alilogtype: usercenter_serverlog    serverip: ${serverip}  multiline.pattern: '^\['  multiline.negate: true  multiline.match: after#============================= Filebeat modules ===============================filebeat.config.modules:  # Glob pattern for configuration loading  path: ${path.config}/modules.d/*.yml  # Set to true to enable config reloading  reload.enabled: false  # Period on which files under path should be checked for changes  #reload.period: 10s#================================ Outputs =====================================#-------------------------- Elasticsearch output ------------------------------# 这部分是用于配置日志输出到 Elasticsearch 的部分#----------------------------- Logstash output --------------------------------# 将日志发送到 logstash 主机的 5044 端口,对应的这台 logstash 主机需要配置一个 input 监听于 5044 (配置过程,参考 Logstash 文档)output.logstash:  hosts: ["10.26.10.15:5044"]

参数解释:

## 默认值 log ,表示一个日志读取源type : log## 该配置是否生效,如果设置为 false 将不会收集该配置的日志enabled: true## 要抓取的日志路径,写绝对路径paths: /to/file.log## fields 表示自定义字段,在下面缩进两格处写要自己添加的字段。如: alilogtype: usercenter_serverlog  表示在输出的每条日志中加入该字段,key:alilogtype , value:usercenter_serverlog 用于标识该日志源的类别,在传输到下一层 logstash 时可以根据该字段分类处理。  fields:     alilogtype: usercenter_serverlog##     意思相同,增加一个自定义字段,key:serverip ,value: ${serverip} 这个值是读取的系统环境变量,如果系统中没有定义这个环境变量,那么启动 filebeat 的时候会报错,找到这个值.        serverip: ${serverip}## 设置系统环境变量,创建文件  /etc/profile.d/serverip.sh  加入内容:export serverip=`ifconfig eth0 | grep 'inet addr' | awk '{print $2}' | cut -d':' -f2`## 这里拿的是本机 IP## 多行合并参数,正则表达式multiline.pattern: '^\['## true 或 false;默认是false,匹配pattern的行合并到上一行;true,不匹配pattern的行合并到上一行multiline.negate: true## after 或 before,合并到上一行的末尾或开头multiline.match: after##  ['ERROR','WARN'] 该属性可以配置只收集error级别和warn级别的日志,如果有配置多行收集,一定要将这个配置放在多行的后面include_lines:## ['DEBUG'] 该属性配置不收集DEBUG级别的日志,如果配置多行 这个配置也要放在多行的后面exclude_lines: ## Logstash所在的主机hosts: ## 如果设置为TRUE和配置了多台logstash主机,输出插件将负载均衡的发布事件到所有logstash主机。如果设置为false,输出插件发送所有事件到随机的一台主机上,如果选择的不可达将切换到另一台主机。默认是false。loadbalance## 每个配置的主机发布事件到Logstash的工作者数量。这最适用于启用负载平衡模式。示例:如果您有2个主机和3个工作人员,则共有6个工作人员启动(每个主机3个)。worker

转载于:https://blog.51cto.com/tchuairen/2166620

你可能感兴趣的文章
SQL*PLUS命令的使用大全
查看>>
hdu 2897(巴什博弈变形)
查看>>
hdu 1885(状态压缩+bfs)
查看>>
编程艺术第十六~第二十章:全排列/跳台阶/奇偶调序,及一致性Hash算法
查看>>
Hadoop1.2.0开发笔记(五)
查看>>
将SVN Server 创建成后台服务
查看>>
The type or namespace name 'Windows' does not exist in the namespace 'System'
查看>>
mysql索引无效且sending data耗时巨大原因分析
查看>>
ant打包成war包,通过jenkins自动ant构建到tomcat
查看>>
Questions about the AQS - Stack Overflow
查看>>
JSON和JSONP (含jQuery实例)(share)
查看>>
Cracking the coding interview--Q1.7
查看>>
MS SQL 中判断 数据库, 存储过程,表,临时表,视图,函数,用户,用户创建对象 等是否存在 SQL脚本...
查看>>
.Net中的加密解密
查看>>
sencha touch list(列表) item(单行)单击事件触发顺序
查看>>
网友对twisted deferr的理解
查看>>
Android + eclipse +ADT安装完全教程
查看>>
BITMAP CONVERSION FROM ROWIDS
查看>>
常见android手机分辨率
查看>>
Inno Setup技巧[实例]添加自定义页面
查看>>