skywalking apm怎么从agent收集信息的
时间: 2023-07-22 18:12:46 浏览: 163
SkyWalking APM 是一个开源的应用性能监控系统,它通过在应用程序中部署代理(agent)来收集信息。下面是 SkyWalking APM 从代理收集信息的一般流程:
1. 代理部署:首先,你需要将 SkyWalking APM 的代理部署到你的应用程序中。代理可以以不同的方式集成到应用程序中,例如通过 Java Agent、Servlet Filter、Web Filter 等方式。
2. 数据采集:一旦代理部署完毕,它会开始收集应用程序运行时的各种数据。这些数据可以包括方法调用、数据库访问、远程调用等等。代理会根据配置的规则和策略来决定要收集的数据类型和详细程度。
3. 数据传输:收集到的数据会被代理发送到 SkyWalking APM 的后端服务。代理会使用合适的协议和格式将数据传输给后端服务,通常使用 HTTP 或者 gRPC。
4. 后端处理:后端服务接收到代理发送的数据后,会进行处理和分析。它会根据数据进行性能指标计算、服务依赖分析、调用链追踪等操作,以提供全面的应用程序性能监控和故障排查支持。
总的来说,SkyWalking APM 通过代理的方式在应用程序中插入代码,收集关键的运行时数据,并将其传输到后端服务进行进一步的处理和分析。这样可以帮助开发人员了解应用程序的性能状况,并进行问题排查和优化。
相关问题
UnsupportedClassVersionError: org/apache/skywalking/apm/agent/SkyWalkingAgent : Unsupported major.minor version 52.0
这个错误通常表示你的 Java 运行时环境的版本不支持运行所需的类文件。UnsupportedClassVersionError: Unsupported major.minor version 52.0 错误说明该类文件是使用较高版本的 Java 编译器编译的(Java 8 或更高版本),而你的 Java 运行时环境是较低版本的(低于 Java 8)。
要解决这个问题,你有两个选择:
1. 升级你的 Java 运行时环境至 Java 8 或更高版本。这样,你就能够运行编译为较高版本的类文件。
2. 如果你无法升级 Java 运行时环境,你可以尝试重新编译或使用一个较低版本的 SkyWalking Agent,以适应你当前的 Java 运行时环境。
请注意,如果你选择升级 Java 运行时环境,你需要确保你的应用程序和其他依赖项也能够与新版本的 Java 兼容。
skywalking apm 的java agent和js agent接收端口分别是什么,即grpc和http接收端口分别是什么。11800和12800分别用于接收什么信息,使用时有什么区别,怎么让apm开启接收http消息。为什么我本地使用java agent正常,使用js agent就不行
在 SkyWalking APM 中,Java Agent 和 JS Agent 使用的接收端口以及对应的功能如下:
1. Java Agent 接收端口:
- gRPC 端口:默认为 11800,用于接收跨进程追踪(Cross Process Tracing)的数据。
- HTTP 端口:默认为 12800,用于接收 Web 请求的数据。
2. JS Agent 接收端口:
- gRPC 端口:默认为 11800,用于接收跨进程追踪(Cross Process Tracing)的数据。
对于接收端口的区别和使用方式:
- gRPC 端口:Java Agent 和 JS Agent 都使用 gRPC 端口来接收跨进程追踪的数据。gRPC 是一种高性能的远程过程调用(RPC)框架,它可以提供更快速和高效的数据传输。Java Agent 和 JS Agent 都可以通过配置文件指定 gRPC 端口。
- HTTP 端口:Java Agent 使用 HTTP 端口来接收 Web 请求的数据。这里的数据包括 HTTP 请求的性能指标、URL 路由等信息。Java Agent 可以通过配置文件指定 HTTP 端口。
让 SkyWalking APM 开启接收 HTTP 消息,你需要按照以下步骤进行配置:
1. 打开 `config/collector.properties` 文件。
2. 将 `restHost` 设置为合适的 IP 地址或主机名,以指定监听的地址。
3. 将 `restPort` 设置为你希望使用的 HTTP 端口号,例如设置为 12800。
4. 保存配置文件并重启 SkyWalking APM。
关于你在本地使用 Java Agent 正常,但使用 JS Agent 不行的问题,可能有以下原因:
1. 版本兼容性:确保你使用的是与你的项目和 SkyWalking APM 版本兼容的 JS Agent。不同版本之间可能存在不兼容性。
2. 配置问题:检查 JS Agent 的配置是否正确,特别是与 SkyWalking APM 后端服务的连接配置。
3. 应用程序环境问题:确保你的应用程序支持加载和执行 JS Agent。
如果上述步骤都正确,并且仍然存在问题,建议检查你的系统日志和 SkyWalking APM 的日志,以获取更多关于 JS Agent 的错误信息和异常栈信息,以便进行故障排查。
阅读全文