企业日志管理面临的挑战
早期在系统规模较小的时候,系统的运维主要靠运维人员手工完成。随着业务的急剧膨胀、微服务化,运维面临巨大的挑战,日志数据管理也面临各种问题:
- 日志不集中 日志散落在不同的设备和组件上,排查问题需要登录到相应设备;
- 查看方式落后 大部分情况采用终端命令查看,在集群、分布式、微服务模式下,日志查找麻烦而且耗时;
- 日志无法联合分析 服务请求需要横跨网络、主机、数据库、应用,传统模式下无法将所有日志数据组合进行联合分析;
- 数据无权限控制 很多系统故障需要交由外部人员查看原始日志,带来一定的安全风险;
- 故障感知迟滞 往往都在用户反馈后才发现系统、应用故障,缺乏基于日志的监控告警,无法提前感知故障;
- 缺乏基于日志的分析挖掘 日志数据包含大量的应用和业务信息,基于日志的分析挖掘可以为运维和运营驱动决策。
蓝鲸日志平台
面对业务系统微服务化给日志管理带来的巨大挑战,蓝鲸日志平台应运而生,蓝鲸日志平台是为解决分布式架构下日志统一收集、清洗、存储、分析、查询困难等问题的一款日志产品,以下是日志平台的业务流程:
1.产品架构
蓝鲸日志平台已实现了日志统一管理需求:
日志采集:对接蓝鲸CMDB,使用日志采集器实现Linux、Windows、AIX系统上日志数据的统一采集上报;
日志清洗:使用蓝鲸Transfer组件清洗,将非结构化的日志清洗成结构化数据;
日志存储:使用ES分布式存储,也支持接入企业已有日志数据存储;
日志检索:支持强大的ES QueryString语法和正则匹配;
日志监控:使用蓝鲸监控进行日志关键字监控告警;
日志分析:集成Grafana进行可视化分析;
日志提取:日志文件下载和权限管理;
权限管理:对接蓝鲸权限中心实现日志数据细颗粒度权限控制。
2.产品功能
日志采集
对接蓝鲸CMDB,使用日志采集器实现Linux、Windows、AIX系统上日志数据统一采集上报,蓝鲸日志采集特点:
- 对接蓝鲸CMDB,实现静态拓扑&IP、动态拓扑节点采集;
- 支持Linux、Windows、AIX多种操作系统;
- 支持多路径、多文件采集;
- 支持在采集端进行简单的日志过滤,如字符串过滤、分隔符过滤;
- 多编码支持。
日志清洗
使用蓝鲸Transfer组件清洗,将非结构化的日志清洗成结构化数据;
清洗方法:json、分隔符、正则表达式。
日志存储
日志平台用Elasticsearch存储日志数据,ES是一个分布式可扩展的实时搜索和分析引擎,用户可自定义设置日志储存集群、日志数据保留周期、用户查看权限。
日志检索
日志查询功能:
- 功能强大查询语法,支持QueryString语法和正则表达式;
- 灵活选择查询时间范围,快速添加搜索条件;
- 搜索统计视图展示;
- 实时日志滚动;
- 日志上下文;
- 日志数据导出;
- 自定义字符显示和排序规则。
过滤查询:
实时日志:
日志上下文:
日志监控
支持多监控维度并可对数据进行筛选过滤,内置常用的邮件、微信、短信、语音通知方式,并支持自定义告警模板。
日志分析
集成开源产品Grafana进行日志可视化分析。
安全日志分析:
Tomcat日志分析:
容器日志分析:
日志提取
你是否还受困于没有服务器权限,无法获取日志数据;你是否还烦于需要经常给第三方提供日志文件?
日志提取功能:
- 日志文件权限管理;
- 支持日志文件日志筛选;
- 日志子目录遍历;
- 多服务器、多日志文件下载;
- 日志文本过滤:关键字过滤、关键字访问、最新行数、按行过滤。
索引集管理
- 索引集是日志平台的检索和监控单元;
- 索引集可以实现第三方ES集群数据分析查询和监控;
- 通过索引集可以实现不同应用日志联合分析查询和监控。
权限管理
按日志平台提供的功能进行查看和管理两种基本的划分,最小颗粒度到索引集。
收益和价值
日志统一管理
- 实现企业日志数据集中管理;
- 实现日志数据结构化存储,方便故障定位和分析;
- 细颗粒度权限控制保障日志数据安全性;
- 为未来企业进行大数据分析提供数据源。
提升运维质量
- 提供一种高效、灵活、全局快速的检索日志方式,便于快速定位故障;
- 基于日志关键字告警,可以提前介入处理,减少事故发生;
- 事后通过日志分析,可以对日志做审计和问题分析,减少故障发生。
数据分析可视化
- 通过丰富的可视化组件实现日志数据分析视图,便于运维和业务人员直观发现、分析数据中所隐藏的问题,及时应对风险和机会。