public KeyIterator getKeys(final KeyRangeQuery query, final StoreTransaction txh) throws StorageException {
final String p = txh.getConfiguration().getMetricsPrefix();
return runWithMetrics(p, metricsStoreName, M_GET_KEYS,
new StorageCallable<KeyIterator>() {
public KeyIterator call() throws StorageException {
KeyIterator ki = backend.getKeys(query, txh);
if (null != p) {
return MetricInstrumentedIterator.of(ki, p + "." + metricsStoreName + "." + M_GET_KEYS + "." + M_ITERATOR);
} else {
return ki;
}