Docker部署ELK之部署filebeat7.6.0(3)
1. filebeat介绍
Filebeat是用于转发和集中日志数据的轻量级传送工具。Filebeat监视您指定的日志文件或位置,收集日志事件,并将它们转发到Elasticsearch或 Logstash进行索引。
Filebeat的工作方式如下:启动Filebeat时,它将启动一个或多个输入,这些输入将在为日志数据指定的位置中查找。对于Filebeat所找到的每个日志,Filebeat都会启动收集器。每个收集器都读取单个日志以获取新内容,并将新日志数据发送到libbeat,libbeat将聚集事件,并将聚集的数据发送到为Filebeat配置的输出。
工作流程下:

2. Docker部署filebeat
拉取filebeat镜像:
sudo docker pull elastic/filebeat:7.6.0
新建filebeat.yml文件,便于映射
filebeat.inputs:
- type: log
enabled: true
paths:
- /var/log/*.log
tags: ["filebeat-test"]
tail_files: true #每次最后一行
multiline.pattern: '^\[' #分割符
multiline.negate: true
multiline.match: after #最后合并
- type: log
paths:
- "/var/log/apache2/*"
fields:
apache: true
fields_under_root: true
setup.kibana.host: "192.168.231.132:5601"
setup.kibana.username: 'elastic'
setup.kibana.password: 'xujingkun'
output.elasticsearch:
hosts: '${ELASTICSEARCH_HOSTS:192.168.231.132:9200}'
username: '${ELASTICSEARCH_USERNAME:elastic}'
password: '${ELASTICSEARCH_PASSWORD:xujingkun}'

输入命令,构建容器
docker run --name filebeat01 -d --network=mynetwork --ip 172.18.0.6 -v $PWD/var/log/:/var/log/ -v $PWD/data/filebeat/filebeat.yml:/usr/share/filebeat/filebeat.yml elastic/filebeat:7.6.0
容器构建成功后,可以在/var/log/目录下,创建日志文件**.log,写入内容


保存文件后,刷新kibana,可以看到日志已经被采集上来

3. FAQ&遇到的问题
filebeat全量采集数据问题,通过映射的日志文件,用gedit修改后,会全量采集数据所有的行数据都被写入到es中
解决方法:
参考url:https://discuss.elastic.co/t/err-write-broken-pipe/115071/6
通过echo命令追加日志到文件或者程序log4j写入日志,均可以是增量增加,不是全量,如果通过编辑工具修改,则为全量抓取
命令:
sudo echo '"[2020-10-19 09:38:32] hello world!"' >> xujk01.log


kibana显示@timestamp和实际时间差8个小时
解决方法:
在kibana端,通过设置@timestamp的格式实现的
Management-》Index Patterns-》@timestamp->edit


Docker部署ELK之部署filebeat7.6.0(3)的更多相关文章
- Docker环境 ELK 快速部署
Docker环境 ELK快速部署 环境 Centos 7.4 , Docker version 17.12 Docker至少3GB内存: #内核配置 echo ' vm.max_map_count = ...
- Docker部署ELK之部署logstash7.6.0(4)
前言: logstash 和filebeat都具有日志收集功能,filebeat更轻量,占用资源更少,但logstash 具有filter功能,能过滤分析日志.一般结构都是filebeat采集日志,然 ...
- Docker部署ELK之部署kibana7.6.0(2)
1. 拉取kibana镜像 sudo docker pull kibana:7.6.0 2. 输入命令构建kibana容器,关于挂载kibana配置文件的问题,也可以先构建一个容器,然后把配置文件co ...
- Docker部署ELK之部署elasticsearch7.6.0(1)
1. 拉取elasticsearch7.6.0镜像: sudo docker pull elasticsearch:7.6.0 2. 输入命令,构建容器: sudo docker run --name ...
- 【杂记】docker搭建ELK 集群6.4.0版本 + elasticsearch-head IK分词器与拼音分词器整合
大佬博客地址:https://blog.csdn.net/supermao1013/article/category/8269552 docker elasticsearch 集群启动命令 docke ...
- docker方式部署elk日志搜索平台
Docker部署ELKF操作文档 前提介绍 1.之前搭建elk+f+k使用原生系统软件安装方式,由于docker镜像日趋成熟,docker官网和elastic官网都有相关镜像和各自安装文档可供参考,各 ...
- 使用Docker快速部署ELK分析Nginx日志实践(二)
Kibana汉化使用中文界面实践 一.背景 笔者在上一篇文章使用Docker快速部署ELK分析Nginx日志实践当中有提到如何快速搭建ELK分析Nginx日志,但是这只是第一步,后面还有很多仪表盘需要 ...
- Docker 部署ELK之Sentinl日志报警
前篇文章简单介绍了Docker 部署ELK,以及使用filebeat收集java日志.这篇我们介绍下日志报警配置,这里我们使用Sentinl插件. 1.修改kibana参数 进入elk容器,修改对应参 ...
- Docker 部署ELK
1.安装docker前安装pip sudo yum -y install epel-release sudo yum install python-pip 2.安装docker #安装依赖包 yum ...
随机推荐
- css图片显示文字(上浮)
<html> <head lang="en"> <meta charset="UTF-8"> <title>&l ...
- Linux:Ubuntu银河麒麟防火墙操作
查看防火墙状态 #防火墙状态 sudo ufw status inactive状态是防火墙 关闭 状态 active状态是防火墙 开启 状态 开启防火墙 #开启防火墙 sudo ufw enable ...
- Hystrix 使用说明
1.什么情况下会触发 fallback 方法 名字 描述 触发fallback EMIT 值传递 NO SUCCESS 执行完成,没有错误 NO FAILURE 执行抛出异常 YES TIMEOUT ...
- Cent OS下安装JDK11
自己云服务器以前装了个JDK1.7,最近发现出了jdk11,所以修改一下JDK版本: 我这里用的是Xshell和XFtp工具,下载地址:https://www.netsarang.com/downlo ...
- 大数据-Hadoop虚拟机的准备以及配置(三台机子)
虚拟机的准备 修改静态IP(克隆的虚拟机) vim /etc/udev/rules.d/70-persistent-net.rules 配置网络: Vim /etc/sysconfig/network ...
- mysql学习--MySQL存储引擎对比总结
一.存储引擎是什么 存储引擎是数据库的核心,对于mysql来说,存储引擎是以插件的形式运行的.MySQL默认配置了许多不同的存储引擎,可以预先设置或者在MySQL服务器中启用.你可以选择适用于服务器. ...
- Codeforces Round#687 Div2 题解
打这场的时候迷迷糊糊的,然后掉分了( A Prison Break: 题面很复杂,但是题意很简单,仅需求出从这个点到四个角的最大的曼哈顿距离即可 #include <bits/stdc++.h& ...
- 「POJ3436」ACM Computer Factory题解
题意: 有很多台机器,可以把物件从一种状态改装成另一种状态,初始全为\(0\),最终状态全为\(1\),让你可以拼凑机器,请问最大总性能为多少,且要求输出方案. 题解: 这道题是真的水啊,我不想写太多 ...
- 常见最基础的Dos命令.
打开cmd的方式. 1.+系统+命令提示符 2.Win+R 输入cmd 打开命令台 (推荐使用) 3.在任意的文件夹下按住SHIFT 加鼠标右键 在此处打开命令行窗口 4.资源管理器的地址栏前面加上 ...
- 前端开发入门到进阶第四集【使用sublime安装jshint和cssLint】
参考:https://blog.csdn.net/qq_27965129/article/details/52786224 使用sublime安装JSHint插件: 1,解决不能使用package c ...