简介编辑

Elastic APM Node.js Agent 将性能指标和错误发送到 APM Server。它内置支持最流行的框架和路由器,以及一个简单的 API,允许您对任何应用程序进行检测。

代理如何工作?编辑

代理会自动检测支持的框架并记录有趣的事件,例如 HTTP 请求和数据库查询。为此,它会在模块加载时修补模块,以捕获模块函数和回调何时被调用。此外,在某些情况下,将修补模块以允许跟踪上下文通过异步延续传播。这意味着对于支持的技术,不需要进行任何代码更改。

代理会自动将模块函数调用链接到回调调用,以测量它们的持续时间和元数据(例如 DB 语句),以及 HTTP 相关信息(例如 URL、参数和标头)。

这些事件称为事务和跨度,会发送到 APM Server。APM Server 会将它们转换为适合 Elasticsearch 的格式,并将它们发送到 Elasticsearch 集群。然后,您可以使用 Kibana 中的 APM 应用程序来深入了解应用程序中的延迟问题和错误罪魁祸首。

其他组件编辑

APM 代理与APM ServerElasticsearchKibana 协同工作。 APM 指南 提供了有关这些组件如何协同工作的详细信息,并提供了一个矩阵概述了代理和服务器兼容性