2020-01-07
全栈监控从这些层收集不同的指标本身已经是一个挑战,大多数监视工具仅专注于其中的一部分,因为是为传统的单片应用程序开发的。现代品质优良的全栈监控工具应与上述所有层集成在一起,以提供完整的图像并防止盲点。下面一起来了解一下进行全栈监控的作用有哪些?
考虑到容器的短暂特性,至关重要的是全栈监控在启动新容器时对其进行自动监视。这包括认识到已经启动了新容器,内部运行的服务以及如何监视这些服务。例如,在CoScale中,使用了丰富的插件库来监视来自已知服务(如NGINX,Redis,MongoDB和许多其服务)的特定于应用程序的指标。此外在将新节点添加到群集时,必须使用正确的监视代理和设置来配置和配置这些节点,以使监视可以随环境扩展。
为了获得正确的见解,全栈监控需要正确显示容器环境。包含所有容器中所有资源指标的图表的仪表板不是很有见地,通常希望从服务和集群的视图开始,然后在出现问题时能够进行深入研究。全栈监控另一个主要作用是监视代理程序在哪里运行以及产生的开销。这是特别重要的,因为容器是轻量且不可变的结构,因此应尽可能少地受到影响。全栈监控工具需要将代理添加到容器映像中或作为sidecar容器添加,这通常会增加大量开销。
总而言之,进行全栈监控的作用有自动检测和收集数据,但这不限于度量标准收集,还有其一些重要的考虑因素与度量和事件的收集方式有关。因此稳定性好的全栈监控需要收集适当数量的上下文信息以进行故障排除。这包括发生问题时发生的其事件的相关性。是否会影响某个特定服务的所有容器,更详细的日志数据或跟踪信息可以帮助解决服务故障问题。