FAQ: Should I leave microbenchmarks permanently enabled?
By default Aerospike has some basic benchmarks enabled which can be used to give a high level view of what is happening on a node at a given point in time. These benchmark stats are written to the Aerospike log file at 10 second intervals and can be used to spot things such as latency in a certain transaction type. When contacting Aerospike Support for assistance with a problem, it is common that they request additional benchmarks to be enabled on your cluster to help further diagnose the issue. These benchmarks are more granular and you will usually only be asked to enable a few sets of them that are relevant to the issue reported and based on what can be seen in the default high level benchmarks. The question is, rather than enable these reactively, would it be better to have them enabled permanently so that any log files provided to Aerospike Support already contain all of the information they may need?
As with most things, there are pros and cons to both options and it depends what is most important to you and your organization
The ability to provide Aerospike Support with historical data after an event has happened. This is particularly useful when trying to perform a root cause analysis (RCA), especially when the issue appears to have resolved itself and it would now be impossible to collect additional data
Those extra counters will use some locks and having a lot of them enabled may impact the performance of a system. Additionally, extra disk writes will be made to write these counters to the Aerospike log file on a regular basis. In general, the extra load of a few of those benchmark will be negligible, but in some cases can be noticeable and it is therefore important to not unnecessarily turn all those benchmarks on at the same time for extended period of times, especially on latency sensitive system without much overhead.
MICROBENCHMARKS BENCHMARK STORAGE READ WRITE