问题标签 [elastic-apm]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
54 浏览

node.js - 检测 HTTP 请求是否使用带有 nodeJS 的代理

使用 nodeJS,使用 HTTP 客户端(例如axios)将创建一个ClientRequest对象,该对象可以被弹性 APM 等工具库用于报告 HTTP 查询。

错误是:

使用 HTTP 代理时,所有检测库都会报告错误的 URL:http://PROXY_IP:PROXY_PORThttps://FINAL_URL而不是 https://FINAL_URL

如何检查是否ClientRequest使用代理?

(或者这可能是 axios 的问题?)

0 投票
1 回答
176 浏览

kotlin - Ktor 后端服务器需要 Elastic APM 支持

试图监控我们的 Ktor 后端应用程序的性能,并能够将 Elastic APM 代理附加到它。服务器在 Kibana 仪表板中作为服务可见。但它不会为每个传入请求自动创建事务。当我们手动启动事务并在特定路由中结束它时,它只会记录该请求的性能。有没有其他方法可以解决这种情况?

尝试了以下方法

  1. 在设置阶段拦截每个请求并启动事务,但在最后拦截相同的调用时无法结束事务面临的问题。
  2. 对于在下面一段代码中定义的控制器/路由中的每个请求,它都在工作。
0 投票
0 回答
35 浏览

elasticsearch - Elasticsearch,更新apm的索引管理策略

我们已将 elasticsearch apm 从 7.4.2 升级到 7.8.1

索引生命周期策略选项卡显示我们有apm-7.4.2-transaction|metric|error策略。

我相信我们需要为 7.8.1 制定类似的政策。我怎样才能做到这一点?

0 投票
0 回答
87 浏览

python - 如何避免从特定 Python 库向哨兵发送错误?

我正在使用 django 并通过 sentry_sdk 将错误记录到哨兵。
但是,我不想记录特定库中的错误。
例如,弹性 apm 等库会根据状态生成各种错误(如 TransportException、...等)。

上面的示例是如何写下特定错误并忽略它。除了这种方式之外,有没有办法忽略特定库中发生的错误?

0 投票
1 回答
180 浏览

elasticsearch - 发布 https://apm。.com/intake/v2/rum/events net::ERR_BLOCKED_BY_CLIENT

我在 kubernetes (k8s) 上有一个使用 ECK 的弹性堆栈。

Kibana 版本:7.13.2 Elasticsearch 版本:7.13.2 APM 服务器版本:7.13.2 APM 代理语言和版本https ://www.npmjs.com/package/@elastic/apm-rum - 5.9.1 浏览器版本:铬最新

问题描述

前端 apm-run 代理无法向 apm 服务器发送消息。如果我在浏览器上禁用 cors 它可以工作 -google-chrome --disable-web-security --user-data-dir=temp然后导航到我的前端 http://localhost:4201/

POST https://apm.<acme>.com/intake/v2/rum/events net::ERR_BLOCKED_BY_CLIENT

代码

apm.yml

弹性入口.yml

前端.js

浏览器控制台中的错误

![图片|690x117](上传://6c1NfxNM1hsQmlOYnMMcg61Rsns.png) ![图片|690x210](上传://xo2stNrzXpdFFTlxwhm05SaVxbf.png)

apm 服务器

在这种情况下,apm-server pod 不会显示任何错误,我假设客户端永远不会到达服务器。

0 投票
1 回答
152 浏览

spring-boot - 在 Spring Boot 中使用 Micrometer(和 Elastic)使用文件描述符

在各种网站/博客文章中,宣传通过使用带有 Micrometer 的 Spring Boot,我们可以立即获得大量监控指标,包括文件描述符的使用情况。

例如在https://spring.io/blog/2018/03/16/micrometer-spring-boot-2-s-new-application-metrics-collector上:

Spring Boot 2 为您自动配置了很多指标,包括: 数据源利用率,包括:

...

  • HikariCP 池指标

  • RabbitMQ 连接工厂

  • 文件描述符使用

  • Logback:记录每个级别记录到Logback的事件数

...

我看到了大部分指标,但现在我对“文件描述符使用”感兴趣(因为我的 Spring Boot 2.5 应用程序似乎有泄漏),但我没有找到指标。

我尝试了两件事:

“文件描述符使用”是否有特殊名称?还是我需要添加一个特殊的依赖才能启用它?

谢谢

======更新

正如@checketts 正确指出的那样,从源代码看来,该指标仅在 Unix 系统上可用(请参阅https://github.com/micrometer-metrics/micrometer/blob/67c41db552cac463e44cd45545e5a7b8f3513f1b/micrometer-core/src/main /java/io/micrometer/core/instrument/binder/system/FileDescriptorMetrics.java)。我们在那里看到该指标将记录在process.files

因此,我在 Windows 本地没有它可能是正常的。但是当它在 Docker 上运行时我应该拥有它。但这些是我process在 Elastic / Kibana 中获得的唯一指标:

在此处输入图像描述

0 投票
0 回答
52 浏览

kubernetes - 如何在 Kubernetes 上使用 dotnet core agent 来实现弹性 apm?

我在 kubernetes 集群上部署了一个 dotnet core 应用程序,要求是通过 Elastic APM 收集 APM 跟踪和数据。我按照https://www.elastic.co/guide/en/apm/agent/dotnet/current/setup-dotnet-net-core.html的建议尝试了零代码更改设置,但在我的情况下它不起作用. 我不确定我做错了什么。

https://www.elastic.co/blog/using-elastic-apm-java-agent-on-kubernetes-k8s上有一个 java 应用程序示例,它运行良好。对于 dotnet 核心应用程序,我需要类似的解决方案。

** 请注意:我不想在应用程序中进行任何更改。

任何帮助将不胜感激。

0 投票
2 回答
649 浏览

java - 当 Java APM 代理在 Docker 中运行时,如何将 Java APM get 连接到 APM 服务器?

我想在 Docker 中运行 Java APM 代理在 docker 组件中,我收到以下错误消息:

Dockerfile 看起来像这样

docker run 命令返回这个

我必须做什么才能连接到 APM 服务器?

0 投票
0 回答
69 浏览

spring-boot - 使用 Spring Boot 应用程序进行弹性 APM 跟踪

我有一个正在运行的 SB 应用程序,我们在 azure storage explorer 中上传文件,该文件在 KAFKA (topic1) 中触发一个事件,SB 应用程序中的 KAfkaListener(topic1) 接收一个事件 (Event-1) 并按原样转发/发送传入消息到另一个主题 (Event-2)-(topic2),另一个 KafkaListener(topic2) 实际处理消息并执行 JDBC 事务。

当我使用弹性 APM 代理运行我的 SB 应用程序时,我可以看到第一个 KafkaListener 的跟踪(表示消息被路由到另一个主题),即正确。

但我找不到任何进一步具有 jdbc sql 查询的 event2 (topic2) 的踪迹。我想找到 2 个事件 -topic2 的跟踪,它应该具有所有 jdbc sql 查询跟踪。.

0 投票
0 回答
15 浏览

instrumentation - 调试未完成跟踪的最佳实践

我试图弄清楚调试未完成跟踪的最佳实践是什么。这对于监视卡住的跟踪很有用。

据我所知,Elastic APM 不支持这一点。但是文档中没有提到它。我已经将 env 变量设置ELASTIC_APM_LOG_LEVELtrace使用apm nodejs 代理来证明,并且仅在事务/跨度结束时才将事务/跨度报告给apm 服务器。

此外,还发现了对New Relic的 APM 产品的相同功能请求。

我添加了日志相关性,日志包括 trace.id 和 transaction.id。但是查看日志并没有显示事务和跨度的树结构。

我的问题是:监控未完成跟踪的最佳做法是什么?