elastic APM 简单使用
首先,不要以为这个APM功能是一个不务正业、心血来潮的新功能。其实今天elastic的APM来源于之前的opbeat。而Opbeat是由一个丹麦初创团队于2013年成立的老公司了,专门运维软件的开发,而其主打产品即是APM运维软件。被elastic收购之后,opbeat已经于2018年5月份,正式关闭网站和社区,转到了elastic APM上:APM的四大组件APM agentsAPM Serve
首先,不要以为这个APM功能是一个不务正业、心血来潮的新功能。其实今天elastic的APM来源于之前的opbeat。而Opbeat是由一个丹麦初创团队于2013年成立的老公司了,专门运维软件的开发,而其主打产品即是APM运维软件。被elastic收购之后,opbeat已经于2018年5月份,正式关闭网站和社区,转到了elastic APM上:
APM的四大组件
- APM agents
- APM Server
- Elasticsearch
- Kibana APM UI
APM支持的java版本
APM agent是一系列开源库,使用与服务器端相同的语言编写,目前支持node、python、ruby、js,java和golang。您可以像安装任何其他库一样将它们安装到服务器端中。apm agent会检测代码并在运行时收集性能数据和错误。此数据可 缓冲一小段时间并发送到APM服务器。
APM Server是一个用Go编写的开源应用程序,通常在专用服务器上运行。它默认侦听端口8200,并通过JSON HTTP API从代理接收数据。然后,它根据该数据创建文档并将其存储在Elasticsearch中。
Elasticsearch是一个高度可扩展的开源全文搜索和分析引擎。它允许你快速,近实时地存储,搜索和分析大量数据。Elasticsearch用于存储APM性能指标并利用其聚合。
Kibana是一个开源分析和可视化平台,旨在与Elasticsearch协同工作。你可使用Kibana搜索,查看Elasticsearch中存储的数据并与之进行交互。你还可以使用Kibana中的专用APM UI或可以通过 APM Kibana UI直接加载的预构建的开源Kibana dashboard来可视化APM数据。(basic license就授权了APM功能)
Java versions
Vendor | Supported versions | Notes |
Oracle JDK | 7u60+, 8u40+, 9, 10, 11 | --module-path has not been tested yet |
Open JDK | 7u60+, 8u40+, 9, 10, 11 | --module-path has not been tested yet |
IBM J9 VM | 8 service refresh 5+ |
如果使用不支持的版本将会报以下错误
Failed ot start agent - JVM version not supported: 1.8.0_31
更多的版本支持请查看:
https://www.elastic.co/guide/en/apm/agent/java/current/supported-technologies-details.html
APM agents
每个agent都有一个配置列表,具体的配置列表如下
Go Agent | |
Java Agent | |
.NET Agent | |
Node.js Agent | |
Python Agent | |
Ruby Agent | |
Real User Monitoring (RUM) Agent |
java在jar包中使用agent
最新版代理jar包下载
https://search.maven.org/search?q=a:elastic-apm-agent
如下
java -javaagent:[jar 代理的jar包] -Delastic.apm.service_name=[应用的名称] -Delastic.apm.environment=[环境名称,如,prod,test] -Delastic.apm.service_node_name=[多个实例节点名称] -Delastic.apm.server_urls=[APM server 所在的服务] -jar example.jar
更多的核心配置请查看
https://www.elastic.co/guide/en/apm/agent/java/current/config-core.html#config-environment
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)