You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PerfMon Metrics Collector连接失败及API请求错误解决咨询

问题解决步骤

先处理API终端的400 Bad Request错误

这个错误是JMeter发送的HTTP请求语法完全不符合API要求(比如误发了'test'这类无效请求),按以下步骤排查:

  • 检查HTTP Request采样器核心配置:
    • 确认请求方法(GET/POST/PUT等)和API文档要求一致,别选错方法。
    • 核对请求路径,确保填的是正确的API接口地址,不是随便输入的'test'字符串。
    • 检查请求头:如果API要求特定的Content-Type(比如application/json),必须在HTTP Header Manager里添加对应配置,不然API无法识别请求格式。
    • 验证请求体:如果是POST/PUT这类带请求体的请求,确认体内容格式符合API要求,别发送无意义内容。
  • 用View Results Tree监听器验证:发送单个请求后,在监听器里查看JMeter实际发出的请求内容,和API文档对比,确保语法完全正确。

再处理JMeter PerfMon的连接拒绝错误

java.net.ConnectException: Connection denied是因为PerfMon监听器连不上监控目标的PerfMon Agent——PerfMon必须在被监控的机器/容器上运行Agent才能采集指标,解决步骤:

  • 部署PerfMon Agent到数据库容器:
    1. 进入容器:docker exec -it <你的数据库容器ID/名称> /bin/bash
    2. 将PerfMon Agent的CMDRunner.jar复制到容器内(可从JMeter的plugins目录获取,或直接在容器内下载)
    3. 启动Agent:java -jar CMDRunner.jar --tool PerfMonAgent --tcp-port 4444(端口可自定义,记好这个端口)
    4. 配置容器端口映射:如果JMeter在宿主机器,需把容器的Agent端口映射到宿主,比如启动容器时加-p 4444:4444,或用docker port <容器ID> 4444确认映射情况。
  • 修正PerfMon监听器的目标配置:
    • 不要填127.0.0.1,除非容器和JMeter用的是host网络模式。正确的目标地址是数据库容器的IP(用docker inspect <容器ID>查看NetworkSettings.IPAddress字段),或者宿主IP+映射后的端口。
    • 确保监听器里的端口和Agent启动的端口一致,指标类型(CPU、内存、I/O、网络)选择正确。
  • 验证网络连通性:
    在JMeter所在机器执行telnet <目标IP> 4444或nc -zv <目标IP> 4444,如果不通,检查容器防火墙、宿主防火墙是否阻断了该端口的通信。

内容的提问来源于stack exchange,提问作者Equanimity9121

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 06:45:22