elastic stack在6.3版本开始推出了APM功能,但当时只支持nodejs,python和ruby,尚不支持java和go,而公司里面大部分系统还是java,因此只是关注,还没有去解读。但在6.4.0版本,终于推出了java和go的beta版本,而在6.5.0版本,终于变为GA版本。这使得在生产环境上部署APM服务变为可能,下面让我们一起来看看elastic stack的这个APM服务吧
elastic APM的前世今生
首先,不要以为这个APM功能是一个不务正业、心血来潮的新功能。其实今天elastic的APM来源于之前的opbeat。而Opbeat是由一个丹麦初创团队于2013年成立的老公司了,专门运维软件的开发,而其主打产品即是APM运维软件。
被elastic收购之后,opbeat已经于2018年5月份,正式关闭网站和社区,转到了elastic APM上:
基本组件
Elastic APM 由四个基本组件构成:
- APM agents
- APM Server
- Elasticsearch
- Kibana APM UI
基本架构如下图: