关注分享主机优惠活动
国内外VPS云服务器

Filebeat是一个收集多个领域网站的日志并存储在不同的es索引库中的过程。

1.为什么要为不同的应用系统创建不同的索引?在生产环境中,一台机器必须运行多个域名应用程序,并且web应用程序是集群的。如果filebeat收集的日志都是分散存储的,在es上建立的索引也是分散的,这就不利于日志的聚合和汇总。因此,需要将同一应用的不同机器的所有日志收集起来存储在一个索引数据库中,并根据各种条件在kibana中进行匹配。

2.构建web集群环境

2.1.环境准备IP服务应用192 . 168 . 81 . 210 ngix 01 BBS,blog,www 192 . 168 . 81 . 220 ngix 02 BBS,blog,www

2.2.web集群部署的所有节点配置如下

1.安装nginxyum -y安装nginx2。配置站点配置文件catwww.conf server {服务器名www.jiangxl.com;听80;位置~/{ root/web/www;索引index.html;} } cat BBS . conf server { server _ name bbs.jiangxl.com;听80;位置~/{ root/web/BBS;索引index.html;} } cat blog . conf server { server _ name blog.jiangxl.com;听80;位置~/{ root/web/blog;索引index.html;}}3.创建站点路径mkdir/web/{www,BBS,blog } -pchown -r nginx.nginx/web/echo " www index " & gt;/web/www/index . html echo " BBS index " & amp;gt;/web/BBS/index . html博客索引& ampgt;/web /web/blog/index.html4重载nginx nginx -t nginx:configuration file/etc/nginx/nginx . conf语法正常nginx:configuration file/etc/nginx/ngx . conf测试成功systemctl重新加载nginx5 .访问网站curl www.jiangxl.com bbs.jiangxl.com blog.jiangxl.com www index BBS index blog indexFilebeat是一个收集多个领域网站的日志并存储在不同的es索引库中的过程。-主机频道

2.3.配置应用程序支持json格式的日志输出。所有节点都以这种方式配置。

cat www . conf server { server _ name www.jiangxl.com;听80;位置~/{ root/web/www;索引index.html;} access _ log/var/log/nginx/www _ access . log main;} cat BBS . conf server { server _ name bbs.jiangxl.com;听80;位置~/{ root/web/BBS;索引index.html;} access _ log/var/log/nginx/BBS _ access . log main;} cat blog . conf server { server _ name blog.jiangxl.com;听80;位置~/{ root/web/blog;索引index.html;} access _ log/var/log/nginx/blog _ access . log main;}Filebeat是一个收集多个领域网站的日志并存储在不同的es索引库中的过程。-主机频道

3.配置filebeat,实现不同日志对应不同索引。

3.1.实现思路* *日志索引思路:* *如何才能让filebeat根据不同的日志路径创建不同的索引?其实我们可以想想ls -l命令,可以用来获取文件的详细信息,但是也可以用ll来获取。为什么?因为ll只是一个别名,所以我们也可以用它作为标签。ll对应于ls -l命令

然后日志也一样。我们可以把www_access.log当做一个标志。当标记内容为www_access.log时,我们会将他的日志存储在www_access_xxx的索引库中。

具体配置:如果一台主机上有多个不同应用的日志需要收集,我们可以定义多个类型,最后根据定义的标记进行索引匹配。

* *日志聚合思路:* *我们也可以聚合收集所有机器的tomcat和nginx日志,而不是按照应用来区分,而是把所有的tomcat日志收集在一起,方便开发者在kibana上查询日志和过滤。

如下图所示,tomcat是聚合集合。只需添加一个过滤器,检查哪个机器的日志,并写入主机名。

Filebeat是一个收集多个领域网站的日志并存储在不同的es索引库中的过程。-主机频道

Filebeat标记匹配语法:

Filebeat.inputs:- type: log //启用了类型的日志:true//是否写在es路径中://log path -/var/log/nginx/www _ access . log json . keys _ under _ root:true//打开JSON格式解析json.overwrite _ keys

3.3.检查es上创建的索引数据库。由于nginx集群的相同应用都是写在同一个索引数据库中,所以我们要观察每增加一个集群所产生的数据变化。

nginx01刚配置时的样子

Www: 12个博客:11个BBS: 12个博客

Filebeat是一个收集多个领域网站的日志并存储在不同的es索引库中的过程。-主机频道

添加nginx02后的样子

在nginx02上访问应用六七次,数据明显有变化。

Www: 19博客:18论坛:19

Filebeat是一个收集多个领域网站的日志并存储在不同的es索引库中的过程。-主机频道

可以看看索引里的数据,看看是不是对应的日志,完全正确。

Filebeat是一个收集多个领域网站的日志并存储在不同的es索引库中的过程。-主机频道

3.4.在kibana上关联es索引数据库

3.4.1.创建www索引库。点击管理----索引模式---创建索引。

Filebeat是一个收集多个领域网站的日志并存储在不同的es索引库中的过程。-主机频道

选择@timestamp字段

Filebeat是一个收集多个领域网站的日志并存储在不同的es索引库中的过程。-主机频道

3.4.2.创建bbs索引数据库的操作与www一致。

Filebeat是一个收集多个领域网站的日志并存储在不同的es索引库中的过程。-主机频道

3.4.3.创建博客索引库的操作与www一致。

Filebeat是一个收集多个领域网站的日志并存储在不同的es索引库中的过程。-主机频道

3.4.4.所有应用索引库都与Filebeat是一个收集多个领域网站的日志并存储在不同的es索引库中的过程。-主机频道一一对应

4.基巴纳的统计日志分析

4.1.统计nginx01主机www应用程序的200个状态代码的数量。Add: beat.name(主机名)是(是)nginx01(主机名)

状态代码(访问状态代码)是(是)200(状态代码是200)

Filebeat是一个收集多个领域网站的日志并存储在不同的es索引库中的过程。-主机频道

4.2.只需要添加一个筛选器来统计访问状态代码为200的所有日志。

添加:状态代码(访问状态代码)是(是)200(状态代码是200)

日志还起到了聚合的作用,所有节点都可以统计。

Filebeat是一个收集多个领域网站的日志并存储在不同的es索引库中的过程。-主机频道

以上是filebeat收集多个域名的网站日志,存储在不同的es索引库中的过程的详细内容。更多关于filebeat收集网站日志和存储es的信息,请关注主机频道zhujipindao的其他相关文章。com!

未经允许不得转载:主机频道 » Filebeat是一个收集多个领域网站的日志并存储在不同的es索引库中的过程。

评论 抢沙发

评论前必须登录!