如何获取进程ID而不使用shell脚本作为OS Process Sampler - Jmeter的arg?

时间:2017-01-25 17:31:20

标签: jmeter jmeter-plugins

我需要使用JMeter获取后台进程的id。

我正在寻找输出:

ps -ef | grep [b]ackend.js | awk '{ print $2 }'

我不能使用shell脚本,因为我不希望脚本成为依赖项;有没有办法通过OS Process Sampler或其他插件在JMeter中执行上述命令?

1 个答案:

答案 0 :(得分:1)

根据manual page

,我建议使用Bash shell的-c选项
  

-c

     

从第一个非选项参数command_string中读取并执行命令,然后退出。如果在command_string之后存在参数,则将第一个参数分配给$ 0,并将任何剩余的参数分配给位置参数。赋值为$ 0设置shell的名称,该名称用于警告和错误消息。

所以:

  1. 添加OS Process Sampler
  2. 按如下方式配置:

    • 命令:/bin/bash
    • 第一个命令参数:-c
    • 第二个命令参数:ps -ef | grep [b]ackend.js | awk '{ print $2 }'

      Bash Script Os Process simpler

  3. 有关从JMeter测试启动第三方程序的更多信息,请参阅How to Run External Commands and Programs Locally and Remotely from JMeter文章。

相关问题