1分钟系列-Filebeat 模块之 Nginx 配置使用

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: 1分钟系列-Filebeat 模块之 Nginx 配置使用

背景

在上一篇分享中,我们发现数据采集到的日志数据都在 message 属性里,本次分享如何利用模块格式化日志信息

Filebeat Module

Filebeat 内置提供了许多开箱即用的 modules ,对日志文件做简单的收集和解析处理,可以简化我们的配置,直接使用就可以



cd /usr/local/filebeat-7.6.2-linux-x86_64
# 查看支持哪些模块./filebeat modules listEnabled:
Disabled:activemqapacheauditdawsazurecefciscocorednselasticsearchenvoyproxygooglecloudhaproxyibmmqicingaiisiptableskafkakibanalogstashmispmongodbmssqlmysqlnatsnetflownginxosquerypanwpostgresqlrabbitmqredissantasuricatasystemtraefikzeek

配置 nginx 模块

可以看到,内置了很多的 module,但是都没有启用,如果需要启用需要进行 enable 操作




# 启动./filebeat modules enable nginx
# 输出,说明 nginx 模块已可用Enabled nginx
# 禁用./filebeat modules disable nginx

模块开启之后,进入到 modules.d 目录下,发现只有 nginx.yml 后面没有 .disabled



cd modules.d/ls -al
-rw-r--r-- 1 root root  483 Mar 26 01:23 activemq.yml.disabled-rw-r--r-- 1 root root  475 Mar 26 01:23 apache.yml.disabled-rw-r--r-- 1 root root  280 Mar 26 01:23 auditd.yml.disabled-rw-r--r-- 1 root root 3064 Mar 26 01:23 aws.yml.disabled-rw-r--r-- 1 root root 1382 Mar 26 01:23 azure.yml.disabled-rw-r--r-- 1 root root  200 Mar 26 01:23 cef.yml.disabled-rw-r--r-- 1 root root 1978 Mar 26 01:23 cisco.yml.disabled-rw-r--r-- 1 root root  318 Mar 26 01:23 coredns.yml.disabled-rw-r--r-- 1 root root  964 Mar 26 01:23 elasticsearch.yml.disabled-rw-r--r-- 1 root root  327 Mar 26 01:23 envoyproxy.yml.disabled-rw-r--r-- 1 root root 2019 Mar 26 01:23 googlecloud.yml.disabled-rw-r--r-- 1 root root  376 Mar 26 01:23 haproxy.yml.disabled-rw-r--r-- 1 root root  295 Mar 26 01:23 ibmmq.yml.disabled-rw-r--r-- 1 root root  651 Mar 26 01:23 icinga.yml.disabled-rw-r--r-- 1 root root  470 Mar 26 01:23 iis.yml.disabled-rw-r--r-- 1 root root  366 Mar 26 01:23 iptables.yml.disabled-rw-r--r-- 1 root root  398 Mar 26 01:23 kafka.yml.disabled-rw-r--r-- 1 root root  293 Mar 26 01:23 kibana.yml.disabled-rw-r--r-- 1 root root  471 Mar 26 01:23 logstash.yml.disabled-rw-r--r-- 1 root root  300 Mar 26 01:23 misp.yml.disabled-rw-r--r-- 1 root root  296 Mar 26 01:23 mongodb.yml.disabled-rw-r--r-- 1 root root  311 Mar 26 01:23 mssql.yml.disabled-rw-r--r-- 1 root root  471 Mar 26 01:23 mysql.yml.disabled-rw-r--r-- 1 root root  287 Mar 26 01:23 nats.yml.disabled-rw-r--r-- 1 root root  214 Mar 26 01:23 netflow.yml.disabled-rw-r--r-- 1 root root  472 Mar 26 01:23 nginx.yml-rw-r--r-- 1 root root  495 Mar 26 01:23 osquery.yml.disabled-rw-r--r-- 1 root root  356 Mar 26 01:23 panw.yml.disabled-rw-r--r-- 1 root root  305 Mar 26 01:23 postgresql.yml.disabled-rw-r--r-- 1 root root  343 Mar 26 01:23 rabbitmq.yml.disabled-rw-r--r-- 1 root root  566 Mar 26 01:23 redis.yml.disabled-rw-r--r-- 1 root root  266 Mar 26 01:23 santa.yml.disabled-rw-r--r-- 1 root root  299 Mar 26 01:23 suricata.yml.disabled-rw-r--r-- 1 root root  477 Mar 26 01:23 system.yml.disabled-rw-r--r-- 1 root root  302 Mar 26 01:23 traefik.yml.disabled-rw-r--r-- 1 root root 1294 Mar 26 01:23 zeek.yml.disabled

修改 nginx.yml 配置文件,分别增加 accesserror 的日志文件路径,注意路径最后增加 *,因为 Nginx 以日期归档日志文件




[root@localhost filebeat-7.6.2-linux-x86_64]# vi filebeat-nginx-es.ymlfilebeat.inputs:- type: log  enabled: true  paths:    - /usr/local/nginx/logs/*.logsetup.template.settings:  index.number_of_shards: 3output.elasticsearch:  hosts: ["192.168.111.238:9200",  "192.168.111.239:9200",  "192.168.111.240:9200"]processors:  - add_host_metadata: ~  - add_cloud_metadata: ~
# 加载 modulefilebeat.config.modules:  path: ${path.config}/modules.d/*.yml  reload.enabled: false

启动 filebeat,发现日志报错


./filebeat -e -c filebeat-nginx-es.yml

根据上面的日志提示,执行如下命令进行安装(在线安装有点慢...)

离线安装方式,注意切换到 Elasticsearch 启动权限的用户



wget https://artifacts.elastic.co/downloads/elasticsearch-plugins/ingest-user-agent/ingest-user-agent-6.6.1.zipwget https://artifacts.elastic.co/downloads/elasticsearch-plugins/ingest-geoip/ingest-geoip-6.6.1.zip
bin/elasticsearch-plugin install file:///usr/local/src/ingest-user-agent-6.6.1.zip bin/elasticsearch-plugin install file:///usr/local/src/ingest-geoip-6.6.1.zip
# 查看已经安装的插件bin/elasticsearch-plugin list

在集群中安装成功后,重启 Elasticsearch

测试观察输出

访问 Nginx(安装请参考 https://yezhwi.github.io/java/2020/05/11/1%E5%88%86%E9%92%9F%E7%B3%BB%E5%88%97-Nginx-%E5%AE%89%E8%A3%85-%E5%87%86%E5%A4%87%E8%AE%BF%E9%97%AE%E6%97%A5%E5%BF%97/)首页

在数据浏览查看索引数据,如下图:

可对比上篇文章中的测试结果

下一步计划

在 Kibana 中查看数据

相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
相关文章
|
22天前
|
移动开发 前端开发 JavaScript
前端vue2、vue3去掉url路由“ # ”号——nginx配置(一)
前端vue2、vue3去掉url路由“ # ”号——nginx配置
75 0
|
22天前
|
前端开发 JavaScript 应用服务中间件
前端vue2、vue3去掉url路由“ # ”号——nginx配置(二)
前端vue2、vue3去掉url路由“ # ”号——nginx配置
75 0
|
2天前
|
应用服务中间件 Linux nginx
|
2天前
|
网络协议 安全 应用服务中间件
阿里云申请免费ssl证书并配置nginx
阿里云申请免费ssl证书并配置nginx
|
2天前
|
网络协议 安全 应用服务中间件
阿里云 网站https设置 sll申请与nginx跳转配置
阿里云 网站https设置 sll申请与nginx跳转配置
|
6天前
|
应用服务中间件 数据库 nginx
nginx 第三方模块 与变量
nginx 第三方模块 与变量
|
17天前
|
应用服务中间件 nginx Python
nginx-upload-module模块实现文件断点续传_nginx upload module 断点续传 进度(1)
nginx-upload-module模块实现文件断点续传_nginx upload module 断点续传 进度(1)
|
17天前
|
负载均衡 前端开发 应用服务中间件
Nginx+Tomcat负载均衡配置_nginx做tomcat的负载均衡成功,但tomcat的css文件400
Nginx+Tomcat负载均衡配置_nginx做tomcat的负载均衡成功,但tomcat的css文件400
|
17天前
|
负载均衡 前端开发 应用服务中间件
Nginx+Tomcat负载均衡配置_nginx做tomcat的负载均衡成功,但tomcat的css文件400(2)
Nginx+Tomcat负载均衡配置_nginx做tomcat的负载均衡成功,但tomcat的css文件400(2)
|
18天前
|
负载均衡 安全 应用服务中间件
nginx配置ssl和反向代理的配置代码
【5月更文挑战第2天】nginx配置ssl和反向代理的配置代码
51 3