当前位置: 首页 > 知识库问答 >
问题:

AWS Xray-Daemon本地,无法使用我的应用程序中的Xray-Daemon连接Xray

齐阳
2023-03-14

我正在本地运行Xray守护进程,我希望通过设置守护进程awsxray.setdaemonaddress('127.0.0.1:2000')将数据从docker应用程序推送到Xray。

通过在守护进程容器内运行cat segment.txt>/dev/udp/127.0.0.1/2000验证了守护进程的安装,并且运行良好,如何在容器外运行?

2020-05-11T04:39:45Z [Debug] processor: sending partial batch
2020-05-11T04:39:45Z [Debug] processor: segment batch size: 1. capacity: 50
2020-05-11T04:39:46Z [Info] Successfully sent batch of 1 segments (1.653 seconds)
2020-05-11T04:40:19Z [Debug] Send 1 telemetry record(s)

创建了一个新的网络Mynetwork,并将容器(应用程序和守护进程)连接到该网络。甚至能ping他们

docker exec -ti Myapp ping daemon

尝试将IP地址、docker ipv4地址(172.21.0.2)和容器名称作为awsxray.setdaemonAddress('host:2000')中主机的xray-daemon传递,但没有任何结果,在守护进程日志中既没有错误也没有任何成功。

可以在应用程序日志中看到配置的消息,但似乎链接没有发生

2020-05-11 11:19:49.895 +00:00 [INFO] Configured daemon address to 127.0.0.1:2000
2020-05-12 02:48:33.359 +00:00 [DEBUG] Starting the AWS X-Ray SDK in automatic mode (default).
2020-05-12 02:48:33.364 +00:00 [DEBUG] AWS_XRAY_CONTEXT_MISSING is set. Configured context missing strategy to LOG_ERROR.
2020-05-12 02:48:33.389 +00:00 [INFO] Using custom sampling rules file: src/utils/awsXrayRule.json
2020-05-12 02:48:33.394 +00:00 [INFO] Configured daemon address to 127.0.0.1:2000.
app listening on port 3000!
2020-05-12 02:49:29.342 +00:00 [DEBUG] Starting segment: MY_NODE_APP
2020-05-12 02:49:29.352 +00:00 [DEBUG] Segment sent: {"trace_id:"1-5eba0eb9-8fda8d30ca36e717ae849f68","id":"a96cdf725443768e"}
2020-05-12 02:49:29.352 +00:00 [DEBUG] UDP message sent: {"trace_id":"1-5eba0eb9-8fda8d30ca36e717ae849f68","id":"a96cdf725443768e","start_time":1589251769.342,"name":"MY_NODE_APP","service":{"runtime":"node","runtime_version":"v13.10.1","version":"1.0.0","name":"my-node-app"},"aws":{"xray":{"sdk":"X-Ray for Node.js","sdk_version":"3.0.0","package":"aws-xray-sdk"}},"annotations":{"key1":"value2"},"end_time":1589251769.346}
{
   "version": 1,
   "default": {
     "fixed_target": 1,
     "rate": 1.0
   }
 }

共有1个答案

阴元青
2023-03-14

你介意张贴你的申请日志吗?我认为要调试它,我们需要确保运行在一个容器中的应用程序正在发送数据(这样我们就可以确保应用程序被正确地检测),如果应用程序没有正确地发送数据,那么您将在应用程序日志中看到以下内容(https://github.com/aws/aws-xray-sdk-java/blob/master/aws-xray-sdk-core/src/main/java/com/amazonaws/xray/emitters/udpemitter.java#l84)。

 类似资料:
  • 问题内容: 我收到一条错误消息,提示我无法连接到Docker守护程序。我调查了其他人遇到类似问题的答案,但没有帮助。我正在运行Ubuntu 15.10版本。我将尝试提供我所有的信息。 Docker版本 Docker-Compose版本 如果我尝试停止或启动服务,就会发生这种情况。 如果我跑步 任何帮助将不胜感激。让我知道您是否需要更多信息。 问题答案: 我发现了这个问题,似乎可以解决我的问题。 G

  • 我有一个 Spring 引导项目,其中我使用 spring-boot-starter-actuator 和 io.dropwizard.metrics。 它生成我可以使用 url http://myapplication/metrics 访问的指标。我将应用程序部署在 Wildfly 10 独立服务器上。 我想使用jmx读取jconsole上的指标。我将应用程序配置为使用JMXReporter发送

  • 我无法从我的NodeJS应用程序连接到Elasticsearch docker服务器。 这是我的docker-compose文件: 有弹力的js index.js连接: 我有一个dockerize的应用程序(NodeJS和Elasticsearch-v7.9.3)。服务器可以很好地启动,但当我尝试在Elasticsearch中创建客户端实例时,它向我显示了一个错误: Elasticsearch和K

  • 我试图运行一个连接到本地独立spark集群的java应用程序。我使用start-all.sh以默认配置启动集群。当我转到集群的web页面时,它被启动为OK。我可以用SparkR连接到这个集群,但是当我使用相同的主URL从Java内部连接时,我会得到一条错误消息。 下面是Spark日志中的输出:

  • 命名 git-daemon - 一个非常简单的Git仓库服务器 概要 git daemon [--verbose] [--syslog] [--export-all] [--timeout=<n>] [--init-timeout=<n>] [--max-connections=<n>] [--strict-paths] [--base-path=<

  • Commons Daemon 可以帮你实现将一个普通的 Java 应用编程系统的一个后台服务。 例如 Tomcat 就是利用这个项目来实现作为 Linux 和 Windows 的服务启动和停止的。 示例代码: /** * Launch the Engine from a variety of sources, either through a main() or invoked through *