那日志要如何做呢?这里主要是依靠埋点来完成,比如通过埋点请求进入每一个系统、每一层的时间和响应时间,然后通过这两个时间差看出系统的耗时。由此可以看出只有埋点清晰,才能精准发现问题的所在。
上图是一个比较通用的日志处理方案,每一个服务产生的日志都是通过 Filbeat 收集到 Kafka,然后到 Logstach,最后到 ElasticSearch。其中 Kibana 是一个可视化界面,方便我们分析日志。
上图是 Auting 的日志和监控系统。中间是 K8S 集群,左边是业务上的消息队列,右边则是我们的监控系统。监控系统我们只要是使用 Grafana 根据业务报警,比如我们会配置当成功率低于多少时就报警的情况。主要的日志系统则是使用 logstash 抽取 log 文件到 ES 内使用 Kibana 查看。
最后,我想说的是所有的高可用系统一定不能忘记一个核心概念,那就是异地多活。举例来讲就是我们需要在多地备署多个机房,拥有多地备份和多地容灾。上图是我对上述全部的应用架构优化进行的总结,希望能够为大家提供参考,谢谢。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。