我的JMeter测试接收一个参数来指定测试环境,如PROD,DEV。
两个测试环境的结果都将发送到某个GraphiteHost。但我需要使用rootMetricsPrefix
来分隔每个环境的结果。
例如,PROD的结果将使用前缀global.myapp.performance.prod.
,而DEV的结果将使用前缀global.myapp.performance.dev.
。
所以我将后端监听器中的rootMetricsPrefix
设置为global.myapp.performance.${__groovy($__P(env).toLowerCase())}.
。
不幸的是,它不起作用。
Graphite中的数据不包含环境名称。
谁能告诉我如何解决这个问题?
答案 0 :(得分:2)
您可以使用新的changeCase功能来降低您的价值:
for index,row in tqdm_notebook(myData.iterrows(),desc='iterrows'):
# how many times was the IP address (and specific device) around in the prior 5h?
hours = 12
seen = myData[(myData['ip']==row['ip'])
&(myData['device']==row['device'])
&(myData['os']==row['os'])
&(myData['unix']<row['unix'])
&(myData['unix']>(row['unix']-(60*60*hours)))].shape[0]
ip_seen = myData[(myData['ip']==row['ip'])
&(myData['unix']<row['unix'])
&(myData['unix']>(row['unix']-(60*60*hours)))].shape[0]
myData.loc[index,'seen'] = seen
myData.loc[index,'ip_seen'] = ip_seen
它将读取属性,然后在值
上执行小写答案 1 :(得分:1)
表达式中应该出现错误:
global.myapp.performance $ {__常规(&#34; $ {__ P(ENV)}&#34; .toLowerCase())}。
这也有效:
global.myapp.performance $ {__常规(props.get(&#34; ENV&#34;)toLowerCase())}。
但对于表演,最好使用@ user7294900
提供的解决方案