【ELK】使用filebeat为每个日志创建独立索引

2021/12/24 23:12:02

本文主要是介绍【ELK】使用filebeat为每个日志创建独立索引,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

        EFK是ELK日志监控架构中一个较为简单的、轻量级的日志监控框架,主要使用到了Filebeat 、Elasticsearch以及Kibana。Filebeat采集日志,并通过配置为某一类日志(如Tomcat的日志、Nginx的日志等等)创建独立的索引。如果不做独立的配置,那么Filebeat将所有的日志都采用同一个默认索引。

        这里使用的EFK的版本都为7.16.2版本,Elastic安装为单节点。EFK的安装配置,我之前的文章有详细说明,这里就不做介绍了。

        下面直接上重点!

        Filebeat使用rpm包安装,安装后的配置目录为/etc/filebeat/,这里我们需要为filebeat服务的首次启动创建配置信息。下面两处标红的配置,是网上铺天盖地使用的配置,但是实际测试发现,加上之后,在Kibana里面无法展示自定义的索引,但是并不影响索引模板的展示。

# vi /etc/filebeat/filebeat.yml

filebeat.inputs:
- type: filestream
  enabled: false
  paths:
    - /var/log/*.log

- type: log
  enable: true
  paths:
    - /app/tomcat/logs/access.*.log
#  json.keys_under_root: true
#  json.overwrite_keys: true
  fields:
    index: haweb

filebeat.config.modules:
  path: ${path.config}/modules.d/*.yml
  reload.enabled: false

setup.ilm.enabled: false
setup.template.name: "tomcat-haweb-log"
setup.template.pattern: "tomcat-*"
setup.template.overwrite: true
setup.template.enabled: true

setup.template.settings:
  index.number_of_shards: 1

setup.kibana:
  host: "192.168.223.10:5601"

output.elasticsearch:
  hosts: ["192.168.223.10:9200"]
  index: "tomcat-%{[fields.index]}-*"
  indices:
    - index: "tomcat-haweb-%{+yyyy-MM-dd}"
      when.equals:
        fields:
          index: "haweb"
  username: "elastic"
  password: "3d8h#5v0M"

processors:
  - add_host_metadata:
      when.not.contains.tags: forwarded
  - add_cloud_metadata: ~
  - add_docker_metadata: ~
  - add_kubernetes_metadata: ~

配置好以后,执行下面的命令

# filebeat setup
# systemctl start filebeat.service

然后,在kibana的管理页面中就可以看到我们创建的索引和索引模板了。

首页 - 管理 - Stack Management - 数据 - 索引管理

 

 创建索引模式

根据自定义的索引,查看对应的服务日志信息

 



这篇关于【ELK】使用filebeat为每个日志创建独立索引的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程