Filebeat 采集 应用日志部署 & Kibana 查询操作文档

Filebeat 采集 应用日志部署 & Kibana 查询操作文档

一、环境说明

  1. Filebeat 版本:7.10.0
  2. 日志采集源:/opt/casb/logs/*.log
  3. 后端 ES 地址:https://10.1.1.31:443/es(双向 SSL mTLS 认证)
  4. 索引生成规则:按月滚动 casb-casb31-casb-plugin-log-%{+yyyy.MM}

二、Filebeat 启停与调试启动命令

1. 标准带 TLS 调试启动命令(排查证书 / SSL 连接专用)

进入 Filebeat 程序目录执行:

复制代码
# 进入程序目录
cd /home/filebeat-7.10.0-linux-x86_64

# 带tls模块调试启动,打印证书加载、握手全过程日志
./filebeat -c /opt/casb/filebeat.yml -d tls

参数说明:

  • -c:指定配置文件路径
  • -d tls:开启 tls 模块 debug 日志,排查双向证书加载、Nginx/ES 握手 400 报错

2. 后台常驻标准启动(生产运行)

nohup ./filebeat -c /opt/casb/filebeat.yml > filebeat.out 2>&1 &

3. 停止 Filebeat

查找进程PID

ps -ef | grep filebeat

杀掉进程

kill -15 进程PID

4. 实时查看运行日志

tail -200f logs/2079123707146022913.log

三、索引名称查看方法(从 filebeat.yml 配置文件)

位置 1:elasticsearch.output.index 字段(最直接)

打开配置文件 /opt/casb/filebeat.yml,找到 output 输出段:

复制代码
output.elasticsearch:
  hosts: ["https://10.1.1.31:443/es"]
  index: "casb-casb31-casb-plugin-log-%{+yyyy.MM}" # 索引模板定义位置

%{+yyyy.MM}:按月自动生成真实索引,2026 年 7 月实际索引:casb-casb31-casb-plugin-log-2026.07

位置 2:索引 template 模板(备选查看)

配置中setup.template.name、setup.template.pattern也会对应索引前缀:

复制代码
setup.template.name: "casb-casb31-casb-plugin-log"
setup.template.pattern: "casb-casb31-casb-plugin-log-*"

命令行快速查看索引配置(无需打开文件)

grep '^index:' /opt/casb/filebeat.yml

四、Kibana 查询索引完整操作指南

方式一:DevTools 控制台 DSL 语句查询(命令式)

打开 Kibana 左侧菜单 → 开发工具(Dev Tools),在 Console 输入执行。

1. 查看系统内所有生成的真实索引

GET _cat/indices/casb-casb31-casb-plugin-log-*?v

返回示例:

yellow open casb-casb31-casb-plugin-log-2026.07 r0I8LgJNRT-T-LGiNkNalA 1 1 120 0 89.2kb 89.2kb

2. 统计索引总日志条数

GET casb-casb31-casb-plugin-log-*/_count

3. 查看最新 50 条日志(仅展示时间、日志内容)
复制代码
GET casb-casb31-casb-plugin-log-*/_search
{
  "_source": ["@timestamp", "message"],
  "size": 50,
  "sort": [{"@timestamp": "desc"}]
}
4. 检索包含 ERROR 报错的日志
复制代码
GET casb-casb31-casb-plugin-log-*/_search
{
  "_source": ["@timestamp", "message"],
  "size": 50,
  "sort": [{"@timestamp": "desc"}],
  "query": {
    "match": {
      "message": "ERROR"
    }
  }
}
5. 筛选 WARN 告警日志
复制代码
GET casb-casb31-casb-plugin-log-*/_search
{
  "_source": ["@timestamp", "message"],
  "size": 50,
  "sort": [{"@timestamp": "desc"}],
  "query": {
    "wildcard": {
      "message": "*[WARN]*"
    }
  }
}
6. 查询近 30 分钟实时日志
复制代码
GET casb-casb31-casb-plugin-log-*/_search
{
  "_source": ["@timestamp", "message"],
  "size": 50,
  "sort": [{"@timestamp": "desc"}],
  "query": {
    "range": {
      "@timestamp": {
        "gte": "now-30m"
      }
    }
  }
}

方式二:Kibana Discover 可视化页面查看(图形化检索)

  1. 左侧菜单 → 堆栈管理(Stack Management) → 索引模式
  2. 点击【创建索引模式】,输入索引匹配规则:casb-casb31-casb-plugin-log-*
  3. 时间筛选字段选择:@timestamp,点击下一步创建完成
  4. 左侧菜单进入【Discover】,即可:
    • 时间范围筛选日志
    • 搜索框直接输入关键词(ERROR、WARN、token 等)过滤日志
    • 图表查看日志每分钟产出量

五、补充常见说明

  1. 索引状态 yellow:ES 单节点部署,副本数 rep=1 无法分配,不影响日志写入、查询,无需处理;
  2. 通配符 casb-casb31-casb-plugin-log-* 适配所有月份索引,无需手动修改年月;
  3. -d tls 启动命令专门用于排查之前出现的客户端证书 400 报错问题。
相关推荐
一条破秋裤4 小时前
04_控制GPIO通用化_从寄存器到gpiod
linux
星恒随风4 小时前
Linux进程信号(二):深入理解信号阻塞、未决、sigaction、中断机制、可重入函数与SIGCHLD
linux·运维·服务器·笔记·学习
修船大队长5 小时前
KL15 高电平请求 FullCom:AUTOSAR 项目调用流程
android·java·服务器
额额额对了5 小时前
Linux 驱动实战:ADXL345 驱动
linux·运维·服务器
Web3&Basketball5 小时前
昇腾950DT迁移实测:3笔成本账与决策树
服务器·算法·决策树
牛马工作号8 小时前
Mosquitto + ACME:从 Docker Compose 部署到 TLS 证书自动续期与加载
运维·docker·容器
强哥聊算力10 小时前
《算力江湖·英伟达传奇》第七集:ChatGPT出现前夜,英伟达发生了什么?
服务器·人工智能·算法·ai·chatgpt·gpu算力
Initialize-le11 小时前
Nginx 504 超时、499 一堆?网关排查法
运维·nginx
砚凝霜13 小时前
【软考信息安全】第二十二章 Web服务器安全分析与增强——Apache与IIS
服务器·前端·安全
Android系统攻城狮13 小时前
Linux Gstreamer深度解析之gst_audio_ring_buffer_delay调用流程与实战(七十二)
linux·运维·服务器·gstreamer音视频·音视频进阶