加入收藏 | 设为首页 | 会员中心 | 我要投稿 云计算网_泰州站长网 (http://www.0523zz.com/)- 视觉智能、AI应用、CDN、行业物联网、智能数字人!
当前位置: 首页 > 服务器 > 安全 > 正文

如何用ELK创建TB级的日志监控系统

发布时间:2022-07-22 09:03:47 所属栏目:安全 来源:互联网
导读:本文主要介绍怎么使用 ELK Stack 帮助我们打造一个支撑起日产 TB 级的日志监控系统。 在企业级的微服务环境中,跑着成百上千个服务都算是比较小的规模了。在生产环境上,日志扮演着很重要的角色,排查异常需要日志,性能优化需要日志,业务排查需要业务等等
   本文主要介绍怎么使用 ELK Stack 帮助我们打造一个支撑起日产 TB 级的日志监控系统。
 
  在企业级的微服务环境中,跑着成百上千个服务都算是比较小的规模了。在生产环境上,日志扮演着很重要的角色,排查异常需要日志,性能优化需要日志,业务排查需要业务等等。
 
  然而在生产上跑着成百上千个服务,每个服务都只会简单的本地化存储,当需要日志协助排查问题时,很难找到日志所在的节点。也很难挖掘业务日志的数据价值。
 
  那么将日志统一输出到一个地方集中管理,然后将日志处理化,把结果输出成运维、研发可用的数据是解决日志管理、协助运维的可行方案,也是企业迫切解决日志的需求。
 
  ①日志文件采集端我们使用 FileBeat,运维通过我们的后台管理界面化配置,每个机器对应一个 FileBeat,每个 FileBeat日志对应的 Topic 可以是一对一、多对一,根据日常的日志量配置不同的策略。
 
  除了采集业务服务日志外,我们还收集了 MySQL 的慢查询日志和错误日志,还有别的第三方服务日志,如:Nginx 等。
 
  最后结合我们的自动化发布平台,自动发布并启动每一个 FileBeat 进程。
 
  ②调用栈、链路、进程监控指标我们使用的代理方式:Elastic APM,这样对于业务侧的程序无需任何改动。
 
  对于已经在运营中的业务系统来说,为了加入监控而需要改动代码,那是不可取的,也是无法接受的。
 
  Elastic APM 可以帮我们收集 HTTP 接口的调用链路、内部方法调用栈、使用的SQL、进程的 CPU、内存使用指标等。
 
  可能有人会有疑问,用了 Elastic APM,其它日志基本都可以不用采集了。还要用 FileBeat 干嘛?
 
  是的,Elastic APM 采集的信息确实能帮我们定位 80% 以上的问题,但是它不是所有的语言都支持的比如:C。
 
  其二、它无法帮你采集你想要的非 Error 日志和所谓的关键日志,比如:某个接口调用时出了错,你想看出错时间点的前后日志;还有打印业务相关方便做分析的日志。

(编辑:云计算网_泰州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读