JmeterBeanShell PostProcessor 的使用实例

本文介绍如何在JMeter中调整日志级别至INFO,以便更详细地跟踪测试过程。通过修改jmeter.properties文件,重启JMeter并添加BeanshellPostProcessor控件,可以实现变量值的读取与输出,进一步辅助调试。

为了调试,可以将jmeter的日志级别设置为info,然后添加此控件,进行内容的输出

1、日志级别的修改:

安装目录bin目录下的jmeter.properties

修改如下:

log_level.jmeter=INFO
log_level.jmeter.junit=DEBUG

2、重新启动jmeter,并添加BeanShell PostProcessor控件

import org.apache.log4j.Logger;  #先导入引用的内容

String sign_info1=vars.get("sign_value");    #定义并附值,vars.get是从jmeter里读取变量,并附值给sign_info1
log.info("the sign_value is"+sign_info1);    #打印日志内容:"the sign_value is和变量的内容
sign_info1= URLEncoder.encode(sign_info1, "utf-8");
vars.put("sign_utf",sign_info1);      #重新把新值附给jmeter变量

 

其它详见:Jmeter之Bean shell使用(二)

https://www.cnblogs.com/puresoul/p/4949889.html

转载于:https://www.cnblogs.com/bzdmz/p/10273453.html

### 关于 `postprocessor_pipeline` 的用法 在 Elasticsearch 中,`postprocessor_pipeline` 并不是一个官方定义的标准术语或组件名称。然而,在上下文中可以推测它可能是指一种特定类型的处理流程(pipeline),通常被用来表示数据摄取后的进一步加工逻辑。 Elasticsearch 提供了一种灵活的方式来管理这些管道式的处理器集合,称为 Ingest Node Pipelines[^1]。通过 `_ingest/pipeline` API 可以创建自定义的数据预处理流水线,并将其应用于索引操作之前的操作上。下面详细介绍如何构建类似的 “Post Processor Pipeline”。 #### 创建 Post Processing Pipeline 示例 假设我们希望实现一个名为 `postprocessor_pipeline` 的功能模块,该模块的作用是对文档中的某个字段执行额外的转换操作: ```json PUT _ingest/pipeline/postprocessor_pipeline { "description": "A pipeline that processes data after ingestion", "processors": [ { "set": { "field": "processed_message", "value": "{{message}}" } }, { "script": { "source": """ ctx.processed_message = ctx.message.toUpperCase(); """ } } ] } ``` 上述 JSON 定义了一个新的 ingest pipeline,命名为 `postprocessor_pipeline`。此 pipeline 将原始消息存储到新字段 `processed_message` 中并将其转为大写形式。 #### 使用已存在的 Pipeline 进行查询 如果想验证这个刚刚建立好的 pipeline 是否成功部署,则可以通过如下命令来获取其详情信息: ```bash GET /_ingest/pipeline/postprocessor_pipeline ``` 这条语句会返回有关所请求 ID (`postprocessor_pipeline`) 对应的具体配置细节[^2][^3]。 #### 应用场景下的实际调用方式 当向 Elasticsearch 发送一条记录时,可通过设置参数 `pipeline=postprocessor_pipeline` 来触发刚才设定的工作流。例如: ```java IndexRequest request = new IndexRequest("my_index"); request.source(jsonBuilder() .startObject() .field("message", "hello world") .endObject()); request.setPipeline("postprocessor_pipeline"); // 设置使用的pipeline client.index(request, RequestOptions.DEFAULT); ``` 以上 Java 片段展示了怎样利用客户端库指定某条索引进程关联至我们的定制化 post-processing 流水线[^4]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值