Context
To troubleshoot performance issues (latency on the server), we often enable micro-benchmarks in order to identify time taken for each slice of the transaction.
Method
The general command to enable the micro-benchmarks is by using 'manage config' command in asadm. This would enable it for the entire cluster.
asadm -e 'enable; manage config service param <configuration> to true'
To enable on specific nodes in the cluster, use the following with comma separated IP's.
asadm -e 'enable; manage config namespace <MyNameSpace> param <configuration> to true with <node iP addresses>'
If asadm command is incompatible, you can fall back to use asinfo command within asadm command in order to issue this on the entire cluster.
Example:
asadm -e "asinfo -v 'set-config:context=service;enable-benchmarks-svc=true'" (depreated since version 4.8) asadm -e "asinfo -v 'set-config:context=namespace;id=<namespace>;enable-benchmarks-read=true'" asadm -e "asinfo -v 'set-config:context=namespace;id=<namespace>;enable-benchmarks-write=true'" asadm -e "asinfo -v 'set-config:context=namespace;id=<namespace>;enable-benchmarks-storage=true'"
To enable microbenchmarks on a single-node, simply issue the 'asinfo' command from a shell.
Example:
asinfo -v 'set-config:context=service;enable-benchmarks-batch-sub=true'
Notes
- '--enable' flag was introduced in Aerospike Tools 7.0.0. For versions prior to 7.0.0, use 'enable' prompt inside 'asadm' to update configurations.
Example: Admin+>manage config service param enable-benchmarks-fabric to true
- 'manage conf' command was introduced in Aerospike Tools 6.0.3.
- 'enable-benchmarks-svc' is deprecated since Server version 4.8.
Asadm reference: https://docs.aerospike.com/tools/asadm
Micro-benchmarks: https://docs.aerospike.com/server/operations/monitor/latency