tested 20.01.2019
- JMeter 5.0.0
- Smartmeter 1.8.2
tested 20.01.2019
- Elasticsearch 6.5.x
- copy
install.sh
topath-to-apache-jmeter/lib
- run
./install.sh
elasticsearchCluster
ip and port any your nodeclusterName
your cluster nameindexName
andsampleType
set yout index patternrunId
is ID of unique runrelease
,testPlanName
andflag
is a searchable labels
These settins will affected the troughput for logging to Elasticsearch. Consider about the setup Async Queue size
. Default is 5000 messages. These settings are recommended only for smoke
.
verbose
optionsalways|ifError|never
logs of full requests and responsesaveSubResults
optionstrue|false
logs all data from subrequests
For view of real-time performance test metrics, you cau use Elasticsearch and Kibana
PUT _template/performance-tests
{
"index_patterns": ["performance-tests-*"],
"settings": {
"number_of_shards": 2,
"number_of_replicas" : 1,
"index.translog.durability": "async",
"index.refresh_interval": "30s"
},
"mappings": {
"performance-tests": {
"properties": {
"AllThreads": {
"type": "long"
},
"Assertions": {
"properties": {
"Failure": {
"type": "boolean"
},
"FailureMessage": {
"type": "keyword",
"index": false
},
"Name": {
"type": "keyword",
"index": false
}
}
},
"BodySize": {
"type": "long"
},
"Bytes": {
"type": "long"
},
"ConnectTime": {
"type": "long"
},
"ContentType": {
"type": "keyword",
"index": false
},
"DataEncoding": {
"type": "keyword",
"index": false
},
"DataType": {
"type": "keyword",
"index": false
},
"ElapsedTime": {
"type": "long"
},
"EndTime": {
"type": "date",
"format": "dateOptionalTime"
},
"ErrorCount": {
"type": "long"
},
"GrpThreads": {
"type": "long"
},
"IdleTime": {
"type": "long"
},
"Latency": {
"type": "long"
},
"RequestHeaders": {
"type": "text",
"index": false
},
"ResponseCode": {
"type": "keyword"
},
"ResponseData": {
"type": "text"
},
"ResponseMessage": {
"type": "text",
"fields": {
"raw": {
"type": "keyword"
}
}
},
"RunId": {
"type": "keyword"
},
"SampleCount": {
"type": "long"
},
"SampleLabel": {
"type": "keyword"
},
"SamplerData": {
"type": "text"
},
"StartTime": {
"type": "date",
"format": "dateOptionalTime"
},
"SubResults": {
"type": "text"
},
"Success": {
"type": "boolean"
},
"ThreadName": {
"type": "keyword",
"index": false
},
"URL": {
"type": "keyword"
},
"flag": {
"type": "keyword"
},
"release": {
"type": "keyword"
},
"testPlanName": {
"type": "keyword"
},
"timestamp": {
"type": "date",
"format": "dateOptionalTime"
},
"verbose": {
"type": "keyword"
}
}
}
}
}
indices.memory.index_buffer_size: "30%"
Congratulations, let's run performance tests | Less code more tests