采集流程
Filebeat 采集日志 -> Logstash 处理「过滤、解析、格式化」 -> Elasticsearch 存储 -> Kibana 可视化 Filebeat 采集日志 -> Elasticsearch 存储 -> Kibana 可视化
graph TD A[Filebeat 采集日志] --> B{Logstash 处理}; B -- 过滤、解析、格式化 --> C[Elasticsearch 存储]; C --> D[Kibana 可视化]; style A fill:#aaffaa,stroke:#333,stroke-width:2px; style B fill:#ffd700,stroke:#333,stroke-width:2px; style C fill:#add8e6,stroke:#333,stroke-width:2px; style D fill:#ffb6c1,stroke:#333,stroke-width:2px;
graph TD A[Filebeat 采集日志] --> B[Elasticsearch 存储]; B --> C[Kibana 可视化]; style A fill:#aaffaa,stroke:#333,stroke-width:2px; style B fill:#add8e6,stroke:#333,stroke-width:2px; style C fill:#ffb6c1,stroke:#333,stroke-width:2px;
Beats 轻量型数据采集器
Filebeat 轻量型日志采集器
Elasticsearch
本地集群部署
常用命令
启动
|
|
参数说明
- -d:后台运行(daemonize)。
- -p pid:将进程 ID 写入指定文件(如 pid),用于后续停止服务。
停止
|
|
检查集群健康状态
|
|
返回示例
|
|
查看节点信息
|
|
重置内置 kibana_system 用户的密码
|
|
参数说明
- -u kibana_system:指定要重置密码的用户名为 kibana_system。
- -i:交互式输入密码(会提示你输入并确认新密码)。
Kibana
常用命令
启动
|
|
停止
|
|
检查 Kibana 状态
|
|
补充
filebeat 收集日志 日志格式化:JSON、正则
ES 按不同字段存储:IP、日志级别、时间、日志内容 对关键字段建立索引,提升查询效率 注意:在索引字段中尽量不要保存无意义的日志,因为大量垃圾数据会拖慢查询效率,例如保存所有的查询SQL语句
高可用 ES 集群 ES 索引主备 Filebeat + Logstash 限流
其他 需要评估 filebeat 占用内存、网络等资源对同服务器其他应用程序的影响 ES索引需设置最大存储容量、定时清理策略,避免撑爆磁盘 需要验证当ES不可用、filebeat正常采集日志时,是否会影响到其采集的应用程序
扩展 可以对一个时间段内采集到的错误日志数量进行统计,设定告警阈值,监测到异常情况后及时通知相关同事,避免事故升级