filebeat将收集的日志存储在指定es索引库并在kibana上展示日志数据(三)

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: filebeat将收集的日志存储在指定es索引库并在kibana上展示日志数据1.为什么要指定索引库名称由于一台机器上不止一个应用服务,比如web机器,上面一定会有tomcat、nginx、redis这种服务,如果我们不指定每个应用收集来的日志存放在es集群中的索引名的话,filebeat会将所有的日志存放在一个叫filebeat-xxx的索引库中,这样一来,我们想针对性的看某一个应用的日志将会非常困难

filebeat将收集的日志存储在指定es索引库并在kibana上展示日志数据

1.为什么要指定索引库名称

由于一台机器上不止一个应用服务,比如web机器,上面一定会有tomcat、nginx、redis这种服务,如果我们不指定每个应用收集来的日志存放在es集群中的索引名的话,filebeat会将所有的日志存放在一个叫filebeat-xxx的索引库中,这样一来,我们想针对性的看某一个应用的日志将会非常困难

因此就需要当filebeat收集完日志存放在es时,指定不同应用对应的不同索引名,这样就能实现tomcat在tomcat的索引库,nginx在nginx 的索引库,互不干扰

2.配置文件详解

filebeat.inputs:              //收集什么日志
- type: log                   //采集类型,如果有多个应用系统则配置多个
  enabled: true                 //是否启用,true为启用,false为不起用,启用后就会在es上创建索引库
  paths:                    //日志所在路径
    - /var/log/nginx/access.log 
    - /var/log/nginx/error.log
  fields:                   //在es库里额外增加一个字段,也类似于标签
    index: nginx                //字段名:值
  json.keys_under_root: true            //解析json格式的日志
  json.overwrite_keys: true
output.elasticsearch:               //日志存放在哪个es集群
  hosts: ["192.168.81.210:9200"]          //集群地址
  indices:                      //索引信息
    - index: "elk-nginx-%{+yyyy.MM.dd}"       //索引名称
      when.equals:            //匹配哪个标签
        fields:             //配置标签类型为字段
          index: "nginx"          //配置指定的字段,当index字段的值为nginx则存储到elk-nginx索引中

3.filebeat配置多个应用日志收集并存放到不同的索引库

3.1.修改配置文件

[root@logsj ~]# vim /etc/filebeat/filebeat.yml 
filebeat.inputs:
- type: log
  enabled: true
  paths:
    - /var/log/nginx/access.log
    - /var/log/nginx/error.log
  fields:
    index: nginx
  json.keys_under_root: true
  json.overwrite_keys: true
- type: log
  enabled: true
  paths:
    - /application/tomcat/logs/catalina.out
  fields:
    index: tomcat
output.elasticsearch:
  hosts: ["192.168.81.210:9200"]
  indices:
    - index: "elk-nginx-%{+yyyy.MM.dd}"
      when.equals:
        fields:
          index: "nginx"
    - index: "elk-tomcat-%{+yyyy.MM.dd}"
      when.equals:
        fields:
          index: "tomcat"

3.2.重启filebeat

[root@logsj ~]# systemctl restart filebeat

3.3.查看es上创建的索引库

已经有了tomcat索引和nginx索引,可以看到已经不是默认的3个索引了,因为我们也修改了默认的模板,只要自定义索引名,就默认启用了新的模板配置,就成了es默认的5个分片,1个副本

4.在kibana上创建tomcat和nginx的索引库

在kibana上创建的索引,其实就是调了es上的索引

在这里填写了es索引库的名称后,会自动把匹配的索引库都列出来,所以就相当于调用了

填写名称时要写通配符,比如elk-nginx-*,因为filebeat每天收集来的日志都是单独存放在不用的索引库中,比如第一天为elk-nginx-01,第二天就是elk-nginx-02,这样一来,如果写死索引名,则每天都需要新增索引库,非常麻烦,因此就填写通配符,这样就会把每天的日志都合并在一起,也可以做到不同日期进行对比查询

4.1.创建elk-tomcat索引库

点击Managerment—kibana一栏—索引模式

名称那填写elk-tomcat-*

字段选择@timestamp

创建完成

4.2.创建elk-nginx索引库

名称那填写elk-nginx-*

自动选择@timestamp

4.3.创建完成

5.在kibana上统计不同应用的日志

5.1.统计tomcat日志

点击Discovery—选择对应的tomcat索引

需要统计什么就填写筛选器,如果搜索内容就在上面>_里搜

5.2.统计nginx日志

nginx开启了json格式的日志,因此统计的面更全

相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
目录
相关文章
|
2月前
|
SQL 人工智能 监控
SLS Copilot 实践:基于 SLS 灵活构建 LLM 应用的数据基础设施
本文将分享我们在构建 SLS SQL Copilot 过程中的工程实践,展示如何基于阿里云 SLS 打造一套完整的 LLM 应用数据基础设施。
558 55
|
2月前
|
数据采集 运维 监控
不重启、不重写、不停机:SLS 软删除如何实现真正的“无感数据急救”?
SLS 全新推出的「软删除」功能,以接近索引查询的性能,解决了数据应急删除与脏数据治理的痛点。2 分钟掌握这一数据管理神器。
204 23
|
3月前
|
存储 缓存 Apache
StarRocks+Paimon 落地阿里日志采集:万亿级实时数据秒级查询
A+流量分析平台是阿里集团统一的全域流量数据分析平台,致力于通过埋点、采集、计算构建流量数据闭环,助力业务提升流量转化。面对万亿级日志数据带来的写入与查询挑战,平台采用Flink+Paimon+StarRocks技术方案,实现高吞吐写入与秒级查询,优化存储成本与扩展性,提升日志分析效率。
425 1
|
3月前
|
存储 关系型数据库 数据库
【赵渝强老师】PostgreSQL数据库的WAL日志与数据写入的过程
PostgreSQL中的WAL(预写日志)是保证数据完整性的关键技术。在数据修改前,系统会先将日志写入WAL,确保宕机时可通过日志恢复数据。它减少了磁盘I/O,提升了性能,并支持手动切换日志文件。WAL文件默认存储在pg_wal目录下,采用16进制命名规则。此外,PostgreSQL提供pg_waldump工具解析日志内容。
268 0
|
3月前
|
数据采集 运维 监控
|
XML 安全 Java
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
本文介绍了Java日志框架的基本概念和使用方法,重点讨论了SLF4J、Log4j、Logback和Log4j2之间的关系及其性能对比。SLF4J作为一个日志抽象层,允许开发者使用统一的日志接口,而Log4j、Logback和Log4j2则是具体的日志实现框架。Log4j2在性能上优于Logback,推荐在新项目中使用。文章还详细说明了如何在Spring Boot项目中配置Log4j2和Logback,以及如何使用Lombok简化日志记录。最后,提供了一些日志配置的最佳实践,包括滚动日志、统一日志格式和提高日志性能的方法。
3335 31
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
|
6月前
|
监控 容灾 算法
阿里云 SLS 多云日志接入最佳实践:链路、成本与高可用性优化
本文探讨了如何高效、经济且可靠地将海外应用与基础设施日志统一采集至阿里云日志服务(SLS),解决全球化业务扩展中的关键挑战。重点介绍了高性能日志采集Agent(iLogtail/LoongCollector)在海外场景的应用,推荐使用LoongCollector以获得更优的稳定性和网络容错能力。同时分析了多种网络接入方案,包括公网直连、全球加速优化、阿里云内网及专线/CEN/VPN接入等,并提供了成本优化策略和多目标发送配置指导,帮助企业构建稳定、低成本、高可用的全球日志系统。
739 54
|
11月前
|
监控 安全 Apache
什么是Apache日志?为什么Apache日志分析很重要?
Apache是全球广泛使用的Web服务器软件,支持超过30%的活跃网站。它通过接收和处理HTTP请求,与后端服务器通信,返回响应并记录日志,确保网页请求的快速准确处理。Apache日志分为访问日志和错误日志,对提升用户体验、保障安全及优化性能至关重要。EventLog Analyzer等工具可有效管理和分析这些日志,增强Web服务的安全性和可靠性。
303 9
|
9月前
|
存储 SQL 关系型数据库
MySQL日志详解——日志分类、二进制日志bin log、回滚日志undo log、重做日志redo log
MySQL日志详解——日志分类、二进制日志bin log、回滚日志undo log、重做日志redo log、原理、写入过程;binlog与redolog区别、update语句的执行流程、两阶段提交、主从复制、三种日志的使用场景;查询日志、慢查询日志、错误日志等其他几类日志
732 35
MySQL日志详解——日志分类、二进制日志bin log、回滚日志undo log、重做日志redo log

热门文章

最新文章