[Stats] Adds counter for failed indexing requests
Adds the stats to the _cat/indices, _cat/shards, and the _stats apis. Closes #8938
This commit is contained in:
parent
e8834cc78c
commit
9802c38fa7
|
@ -42,6 +42,7 @@ public class IndexingStats implements Streamable, ToXContent {
|
||||||
private long indexCount;
|
private long indexCount;
|
||||||
private long indexTimeInMillis;
|
private long indexTimeInMillis;
|
||||||
private long indexCurrent;
|
private long indexCurrent;
|
||||||
|
private long indexFailedCount;
|
||||||
|
|
||||||
private long deleteCount;
|
private long deleteCount;
|
||||||
private long deleteTimeInMillis;
|
private long deleteTimeInMillis;
|
||||||
|
@ -56,10 +57,11 @@ public class IndexingStats implements Streamable, ToXContent {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public Stats(long indexCount, long indexTimeInMillis, long indexCurrent, long deleteCount, long deleteTimeInMillis, long deleteCurrent, long noopUpdateCount, boolean isThrottled, long throttleTimeInMillis) {
|
public Stats(long indexCount, long indexTimeInMillis, long indexCurrent, long indexFailedCount, long deleteCount, long deleteTimeInMillis, long deleteCurrent, long noopUpdateCount, boolean isThrottled, long throttleTimeInMillis) {
|
||||||
this.indexCount = indexCount;
|
this.indexCount = indexCount;
|
||||||
this.indexTimeInMillis = indexTimeInMillis;
|
this.indexTimeInMillis = indexTimeInMillis;
|
||||||
this.indexCurrent = indexCurrent;
|
this.indexCurrent = indexCurrent;
|
||||||
|
this.indexFailedCount = indexFailedCount;
|
||||||
this.deleteCount = deleteCount;
|
this.deleteCount = deleteCount;
|
||||||
this.deleteTimeInMillis = deleteTimeInMillis;
|
this.deleteTimeInMillis = deleteTimeInMillis;
|
||||||
this.deleteCurrent = deleteCurrent;
|
this.deleteCurrent = deleteCurrent;
|
||||||
|
@ -72,6 +74,7 @@ public class IndexingStats implements Streamable, ToXContent {
|
||||||
indexCount += stats.indexCount;
|
indexCount += stats.indexCount;
|
||||||
indexTimeInMillis += stats.indexTimeInMillis;
|
indexTimeInMillis += stats.indexTimeInMillis;
|
||||||
indexCurrent += stats.indexCurrent;
|
indexCurrent += stats.indexCurrent;
|
||||||
|
indexFailedCount += stats.indexFailedCount;
|
||||||
|
|
||||||
deleteCount += stats.deleteCount;
|
deleteCount += stats.deleteCount;
|
||||||
deleteTimeInMillis += stats.deleteTimeInMillis;
|
deleteTimeInMillis += stats.deleteTimeInMillis;
|
||||||
|
@ -88,6 +91,10 @@ public class IndexingStats implements Streamable, ToXContent {
|
||||||
return indexCount;
|
return indexCount;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public long getIndexFailedCount() {
|
||||||
|
return indexFailedCount;
|
||||||
|
}
|
||||||
|
|
||||||
public TimeValue getIndexTime() {
|
public TimeValue getIndexTime() {
|
||||||
return new TimeValue(indexTimeInMillis);
|
return new TimeValue(indexTimeInMillis);
|
||||||
}
|
}
|
||||||
|
@ -156,6 +163,10 @@ public class IndexingStats implements Streamable, ToXContent {
|
||||||
indexTimeInMillis = in.readVLong();
|
indexTimeInMillis = in.readVLong();
|
||||||
indexCurrent = in.readVLong();
|
indexCurrent = in.readVLong();
|
||||||
|
|
||||||
|
if(in.getVersion().onOrAfter(Version.V_2_1_0)){
|
||||||
|
indexFailedCount = in.readVLong();
|
||||||
|
}
|
||||||
|
|
||||||
deleteCount = in.readVLong();
|
deleteCount = in.readVLong();
|
||||||
deleteTimeInMillis = in.readVLong();
|
deleteTimeInMillis = in.readVLong();
|
||||||
deleteCurrent = in.readVLong();
|
deleteCurrent = in.readVLong();
|
||||||
|
@ -170,6 +181,10 @@ public class IndexingStats implements Streamable, ToXContent {
|
||||||
out.writeVLong(indexTimeInMillis);
|
out.writeVLong(indexTimeInMillis);
|
||||||
out.writeVLong(indexCurrent);
|
out.writeVLong(indexCurrent);
|
||||||
|
|
||||||
|
if(out.getVersion().onOrAfter(Version.V_2_1_0)) {
|
||||||
|
out.writeVLong(indexFailedCount);
|
||||||
|
}
|
||||||
|
|
||||||
out.writeVLong(deleteCount);
|
out.writeVLong(deleteCount);
|
||||||
out.writeVLong(deleteTimeInMillis);
|
out.writeVLong(deleteTimeInMillis);
|
||||||
out.writeVLong(deleteCurrent);
|
out.writeVLong(deleteCurrent);
|
||||||
|
@ -184,6 +199,7 @@ public class IndexingStats implements Streamable, ToXContent {
|
||||||
builder.field(Fields.INDEX_TOTAL, indexCount);
|
builder.field(Fields.INDEX_TOTAL, indexCount);
|
||||||
builder.timeValueField(Fields.INDEX_TIME_IN_MILLIS, Fields.INDEX_TIME, indexTimeInMillis);
|
builder.timeValueField(Fields.INDEX_TIME_IN_MILLIS, Fields.INDEX_TIME, indexTimeInMillis);
|
||||||
builder.field(Fields.INDEX_CURRENT, indexCurrent);
|
builder.field(Fields.INDEX_CURRENT, indexCurrent);
|
||||||
|
builder.field(Fields.INDEX_FAILED, indexFailedCount);
|
||||||
|
|
||||||
builder.field(Fields.DELETE_TOTAL, deleteCount);
|
builder.field(Fields.DELETE_TOTAL, deleteCount);
|
||||||
builder.timeValueField(Fields.DELETE_TIME_IN_MILLIS, Fields.DELETE_TIME, deleteTimeInMillis);
|
builder.timeValueField(Fields.DELETE_TIME_IN_MILLIS, Fields.DELETE_TIME, deleteTimeInMillis);
|
||||||
|
@ -268,6 +284,7 @@ public class IndexingStats implements Streamable, ToXContent {
|
||||||
static final XContentBuilderString INDEX_TIME = new XContentBuilderString("index_time");
|
static final XContentBuilderString INDEX_TIME = new XContentBuilderString("index_time");
|
||||||
static final XContentBuilderString INDEX_TIME_IN_MILLIS = new XContentBuilderString("index_time_in_millis");
|
static final XContentBuilderString INDEX_TIME_IN_MILLIS = new XContentBuilderString("index_time_in_millis");
|
||||||
static final XContentBuilderString INDEX_CURRENT = new XContentBuilderString("index_current");
|
static final XContentBuilderString INDEX_CURRENT = new XContentBuilderString("index_current");
|
||||||
|
static final XContentBuilderString INDEX_FAILED = new XContentBuilderString("index_failed");
|
||||||
static final XContentBuilderString DELETE_TOTAL = new XContentBuilderString("delete_total");
|
static final XContentBuilderString DELETE_TOTAL = new XContentBuilderString("delete_total");
|
||||||
static final XContentBuilderString DELETE_TIME = new XContentBuilderString("delete_time");
|
static final XContentBuilderString DELETE_TIME = new XContentBuilderString("delete_time");
|
||||||
static final XContentBuilderString DELETE_TIME_IN_MILLIS = new XContentBuilderString("delete_time_in_millis");
|
static final XContentBuilderString DELETE_TIME_IN_MILLIS = new XContentBuilderString("delete_time_in_millis");
|
||||||
|
|
|
@ -171,6 +171,8 @@ public class ShardIndexingService extends AbstractIndexShardComponent {
|
||||||
public void postIndex(Engine.Index index, Throwable ex) {
|
public void postIndex(Engine.Index index, Throwable ex) {
|
||||||
totalStats.indexCurrent.dec();
|
totalStats.indexCurrent.dec();
|
||||||
typeStats(index.type()).indexCurrent.dec();
|
typeStats(index.type()).indexCurrent.dec();
|
||||||
|
totalStats.indexFailed.inc();
|
||||||
|
typeStats(index.type()).indexFailed.inc();
|
||||||
}
|
}
|
||||||
|
|
||||||
public Engine.Delete preDelete(Engine.Delete delete) {
|
public Engine.Delete preDelete(Engine.Delete delete) {
|
||||||
|
@ -256,6 +258,7 @@ public class ShardIndexingService extends AbstractIndexShardComponent {
|
||||||
public final MeanMetric indexMetric = new MeanMetric();
|
public final MeanMetric indexMetric = new MeanMetric();
|
||||||
public final MeanMetric deleteMetric = new MeanMetric();
|
public final MeanMetric deleteMetric = new MeanMetric();
|
||||||
public final CounterMetric indexCurrent = new CounterMetric();
|
public final CounterMetric indexCurrent = new CounterMetric();
|
||||||
|
public final CounterMetric indexFailed = new CounterMetric();
|
||||||
public final CounterMetric deleteCurrent = new CounterMetric();
|
public final CounterMetric deleteCurrent = new CounterMetric();
|
||||||
public final CounterMetric noopUpdates = new CounterMetric();
|
public final CounterMetric noopUpdates = new CounterMetric();
|
||||||
public final CounterMetric throttleTimeMillisMetric = new CounterMetric();
|
public final CounterMetric throttleTimeMillisMetric = new CounterMetric();
|
||||||
|
@ -272,7 +275,7 @@ public class ShardIndexingService extends AbstractIndexShardComponent {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return new IndexingStats.Stats(
|
return new IndexingStats.Stats(
|
||||||
indexMetric.count(), TimeUnit.NANOSECONDS.toMillis(indexMetric.sum()), indexCurrent.count(),
|
indexMetric.count(), TimeUnit.NANOSECONDS.toMillis(indexMetric.sum()), indexCurrent.count(), indexFailed.count(),
|
||||||
deleteMetric.count(), TimeUnit.NANOSECONDS.toMillis(deleteMetric.sum()), deleteCurrent.count(),
|
deleteMetric.count(), TimeUnit.NANOSECONDS.toMillis(deleteMetric.sum()), deleteCurrent.count(),
|
||||||
noopUpdates.count(), isThrottled, TimeUnit.MILLISECONDS.toMillis(throttleTimeMillisMetric.count() + TimeValue.nsecToMSec(currentThrottleNS)));
|
noopUpdates.count(), isThrottled, TimeUnit.MILLISECONDS.toMillis(throttleTimeMillisMetric.count() + TimeValue.nsecToMSec(currentThrottleNS)));
|
||||||
}
|
}
|
||||||
|
|
|
@ -192,6 +192,9 @@ public class RestIndicesAction extends AbstractCatAction {
|
||||||
table.addCell("indexing.index_total", "sibling:pri;alias:iito,indexingIndexTotal;default:false;text-align:right;desc:number of indexing ops");
|
table.addCell("indexing.index_total", "sibling:pri;alias:iito,indexingIndexTotal;default:false;text-align:right;desc:number of indexing ops");
|
||||||
table.addCell("pri.indexing.index_total", "default:false;text-align:right;desc:number of indexing ops");
|
table.addCell("pri.indexing.index_total", "default:false;text-align:right;desc:number of indexing ops");
|
||||||
|
|
||||||
|
table.addCell("indexing.index_failed", "sibling:pri;alias:iif,indexingIndexFailed;default:false;text-align:right;desc:number of failed indexing ops");
|
||||||
|
table.addCell("pri.indexing.index_failed", "default:false;text-align:right;desc:number of failed indexing ops");
|
||||||
|
|
||||||
table.addCell("merges.current", "sibling:pri;alias:mc,mergesCurrent;default:false;text-align:right;desc:number of current merges");
|
table.addCell("merges.current", "sibling:pri;alias:mc,mergesCurrent;default:false;text-align:right;desc:number of current merges");
|
||||||
table.addCell("pri.merges.current", "default:false;text-align:right;desc:number of current merges");
|
table.addCell("pri.merges.current", "default:false;text-align:right;desc:number of current merges");
|
||||||
|
|
||||||
|
@ -403,6 +406,9 @@ public class RestIndicesAction extends AbstractCatAction {
|
||||||
table.addCell(indexStats == null ? null : indexStats.getTotal().getIndexing().getTotal().getIndexCount());
|
table.addCell(indexStats == null ? null : indexStats.getTotal().getIndexing().getTotal().getIndexCount());
|
||||||
table.addCell(indexStats == null ? null : indexStats.getPrimaries().getIndexing().getTotal().getIndexCount());
|
table.addCell(indexStats == null ? null : indexStats.getPrimaries().getIndexing().getTotal().getIndexCount());
|
||||||
|
|
||||||
|
table.addCell(indexStats == null ? null : indexStats.getTotal().getIndexing().getTotal().getIndexFailedCount());
|
||||||
|
table.addCell(indexStats == null ? null : indexStats.getPrimaries().getIndexing().getTotal().getIndexFailedCount());
|
||||||
|
|
||||||
table.addCell(indexStats == null ? null : indexStats.getTotal().getMerge().getCurrent());
|
table.addCell(indexStats == null ? null : indexStats.getTotal().getMerge().getCurrent());
|
||||||
table.addCell(indexStats == null ? null : indexStats.getPrimaries().getMerge().getCurrentSize());
|
table.addCell(indexStats == null ? null : indexStats.getPrimaries().getMerge().getCurrentSize());
|
||||||
|
|
||||||
|
|
|
@ -166,6 +166,7 @@ public class RestNodesAction extends AbstractCatAction {
|
||||||
table.addCell("indexing.index_current", "alias:iic,indexingIndexCurrent;default:false;text-align:right;desc:number of current indexing ops");
|
table.addCell("indexing.index_current", "alias:iic,indexingIndexCurrent;default:false;text-align:right;desc:number of current indexing ops");
|
||||||
table.addCell("indexing.index_time", "alias:iiti,indexingIndexTime;default:false;text-align:right;desc:time spent in indexing");
|
table.addCell("indexing.index_time", "alias:iiti,indexingIndexTime;default:false;text-align:right;desc:time spent in indexing");
|
||||||
table.addCell("indexing.index_total", "alias:iito,indexingIndexTotal;default:false;text-align:right;desc:number of indexing ops");
|
table.addCell("indexing.index_total", "alias:iito,indexingIndexTotal;default:false;text-align:right;desc:number of indexing ops");
|
||||||
|
table.addCell("indexing.index_failed", "alias:iif,indexingIndexFailed;default:false;text-align:right;desc:number of failed indexing ops");
|
||||||
|
|
||||||
table.addCell("merges.current", "alias:mc,mergesCurrent;default:false;text-align:right;desc:number of current merges");
|
table.addCell("merges.current", "alias:mc,mergesCurrent;default:false;text-align:right;desc:number of current merges");
|
||||||
table.addCell("merges.current_docs", "alias:mcd,mergesCurrentDocs;default:false;text-align:right;desc:number of current merging docs");
|
table.addCell("merges.current_docs", "alias:mcd,mergesCurrentDocs;default:false;text-align:right;desc:number of current merging docs");
|
||||||
|
@ -300,6 +301,7 @@ public class RestNodesAction extends AbstractCatAction {
|
||||||
table.addCell(indexingStats == null ? null : indexingStats.getTotal().getIndexCurrent());
|
table.addCell(indexingStats == null ? null : indexingStats.getTotal().getIndexCurrent());
|
||||||
table.addCell(indexingStats == null ? null : indexingStats.getTotal().getIndexTime());
|
table.addCell(indexingStats == null ? null : indexingStats.getTotal().getIndexTime());
|
||||||
table.addCell(indexingStats == null ? null : indexingStats.getTotal().getIndexCount());
|
table.addCell(indexingStats == null ? null : indexingStats.getTotal().getIndexCount());
|
||||||
|
table.addCell(indexingStats == null ? null : indexingStats.getTotal().getIndexFailedCount());
|
||||||
|
|
||||||
MergeStats mergeStats = indicesStats == null ? null : indicesStats.getMerge();
|
MergeStats mergeStats = indicesStats == null ? null : indicesStats.getMerge();
|
||||||
table.addCell(mergeStats == null ? null : mergeStats.getCurrent());
|
table.addCell(mergeStats == null ? null : mergeStats.getCurrent());
|
||||||
|
|
|
@ -121,6 +121,7 @@ public class RestShardsAction extends AbstractCatAction {
|
||||||
table.addCell("indexing.index_current", "alias:iic,indexingIndexCurrent;default:false;text-align:right;desc:number of current indexing ops");
|
table.addCell("indexing.index_current", "alias:iic,indexingIndexCurrent;default:false;text-align:right;desc:number of current indexing ops");
|
||||||
table.addCell("indexing.index_time", "alias:iiti,indexingIndexTime;default:false;text-align:right;desc:time spent in indexing");
|
table.addCell("indexing.index_time", "alias:iiti,indexingIndexTime;default:false;text-align:right;desc:time spent in indexing");
|
||||||
table.addCell("indexing.index_total", "alias:iito,indexingIndexTotal;default:false;text-align:right;desc:number of indexing ops");
|
table.addCell("indexing.index_total", "alias:iito,indexingIndexTotal;default:false;text-align:right;desc:number of indexing ops");
|
||||||
|
table.addCell("indexing.index_failed", "alias:iif,indexingIndexFailed;default:false;text-align:right;desc:number of failed indexing ops");
|
||||||
|
|
||||||
table.addCell("merges.current", "alias:mc,mergesCurrent;default:false;text-align:right;desc:number of current merges");
|
table.addCell("merges.current", "alias:mc,mergesCurrent;default:false;text-align:right;desc:number of current merges");
|
||||||
table.addCell("merges.current_docs", "alias:mcd,mergesCurrentDocs;default:false;text-align:right;desc:number of current merging docs");
|
table.addCell("merges.current_docs", "alias:mcd,mergesCurrentDocs;default:false;text-align:right;desc:number of current merging docs");
|
||||||
|
@ -255,6 +256,7 @@ public class RestShardsAction extends AbstractCatAction {
|
||||||
table.addCell(shardStats == null ? null : shardStats.getIndexing().getTotal().getIndexCurrent());
|
table.addCell(shardStats == null ? null : shardStats.getIndexing().getTotal().getIndexCurrent());
|
||||||
table.addCell(shardStats == null ? null : shardStats.getIndexing().getTotal().getIndexTime());
|
table.addCell(shardStats == null ? null : shardStats.getIndexing().getTotal().getIndexTime());
|
||||||
table.addCell(shardStats == null ? null : shardStats.getIndexing().getTotal().getIndexCount());
|
table.addCell(shardStats == null ? null : shardStats.getIndexing().getTotal().getIndexCount());
|
||||||
|
table.addCell(shardStats == null ? null : shardStats.getIndexing().getTotal().getIndexFailedCount());
|
||||||
|
|
||||||
table.addCell(shardStats == null ? null : shardStats.getMerge().getCurrent());
|
table.addCell(shardStats == null ? null : shardStats.getMerge().getCurrent());
|
||||||
table.addCell(shardStats == null ? null : shardStats.getMerge().getCurrentNumDocs());
|
table.addCell(shardStats == null ? null : shardStats.getMerge().getCurrentNumDocs());
|
||||||
|
|
|
@ -19,7 +19,9 @@
|
||||||
|
|
||||||
package org.elasticsearch.indices.stats;
|
package org.elasticsearch.indices.stats;
|
||||||
|
|
||||||
|
import org.elasticsearch.index.VersionType;
|
||||||
import org.elasticsearch.index.cache.IndexCacheModule;
|
import org.elasticsearch.index.cache.IndexCacheModule;
|
||||||
|
import org.elasticsearch.index.engine.VersionConflictEngineException;
|
||||||
import org.elasticsearch.index.shard.MergeSchedulerConfig;
|
import org.elasticsearch.index.shard.MergeSchedulerConfig;
|
||||||
import org.apache.lucene.util.LuceneTestCase.SuppressCodecs;
|
import org.apache.lucene.util.LuceneTestCase.SuppressCodecs;
|
||||||
import org.apache.lucene.util.Version;
|
import org.apache.lucene.util.Version;
|
||||||
|
@ -41,7 +43,6 @@ import org.elasticsearch.common.io.stream.StreamInput;
|
||||||
import org.elasticsearch.common.io.stream.BytesStreamOutput;
|
import org.elasticsearch.common.io.stream.BytesStreamOutput;
|
||||||
import org.elasticsearch.common.settings.Settings;
|
import org.elasticsearch.common.settings.Settings;
|
||||||
import org.elasticsearch.index.cache.query.QueryCacheStats;
|
import org.elasticsearch.index.cache.query.QueryCacheStats;
|
||||||
import org.elasticsearch.index.cache.query.index.IndexQueryCache;
|
|
||||||
import org.elasticsearch.index.query.QueryBuilders;
|
import org.elasticsearch.index.query.QueryBuilders;
|
||||||
import org.elasticsearch.index.shard.MergePolicyConfig;
|
import org.elasticsearch.index.shard.MergePolicyConfig;
|
||||||
import org.elasticsearch.index.store.IndexStore;
|
import org.elasticsearch.index.store.IndexStore;
|
||||||
|
@ -368,7 +369,6 @@ public class IndexStatsIT extends ESIntegTestCase {
|
||||||
client().prepareIndex("test1", "type1", Integer.toString(1)).setSource("field", "value").execute().actionGet();
|
client().prepareIndex("test1", "type1", Integer.toString(1)).setSource("field", "value").execute().actionGet();
|
||||||
client().prepareIndex("test1", "type2", Integer.toString(1)).setSource("field", "value").execute().actionGet();
|
client().prepareIndex("test1", "type2", Integer.toString(1)).setSource("field", "value").execute().actionGet();
|
||||||
client().prepareIndex("test2", "type", Integer.toString(1)).setSource("field", "value").execute().actionGet();
|
client().prepareIndex("test2", "type", Integer.toString(1)).setSource("field", "value").execute().actionGet();
|
||||||
|
|
||||||
refresh();
|
refresh();
|
||||||
|
|
||||||
NumShards test1 = getNumShards("test1");
|
NumShards test1 = getNumShards("test1");
|
||||||
|
@ -381,6 +381,7 @@ public class IndexStatsIT extends ESIntegTestCase {
|
||||||
assertThat(stats.getPrimaries().getDocs().getCount(), equalTo(3l));
|
assertThat(stats.getPrimaries().getDocs().getCount(), equalTo(3l));
|
||||||
assertThat(stats.getTotal().getDocs().getCount(), equalTo(totalExpectedWrites));
|
assertThat(stats.getTotal().getDocs().getCount(), equalTo(totalExpectedWrites));
|
||||||
assertThat(stats.getPrimaries().getIndexing().getTotal().getIndexCount(), equalTo(3l));
|
assertThat(stats.getPrimaries().getIndexing().getTotal().getIndexCount(), equalTo(3l));
|
||||||
|
assertThat(stats.getPrimaries().getIndexing().getTotal().getIndexFailedCount(), equalTo(0l));
|
||||||
assertThat(stats.getPrimaries().getIndexing().getTotal().isThrottled(), equalTo(false));
|
assertThat(stats.getPrimaries().getIndexing().getTotal().isThrottled(), equalTo(false));
|
||||||
assertThat(stats.getPrimaries().getIndexing().getTotal().getThrottleTimeInMillis(), equalTo(0l));
|
assertThat(stats.getPrimaries().getIndexing().getTotal().getThrottleTimeInMillis(), equalTo(0l));
|
||||||
assertThat(stats.getTotal().getIndexing().getTotal().getIndexCount(), equalTo(totalExpectedWrites));
|
assertThat(stats.getTotal().getIndexing().getTotal().getIndexCount(), equalTo(totalExpectedWrites));
|
||||||
|
@ -423,10 +424,12 @@ public class IndexStatsIT extends ESIntegTestCase {
|
||||||
stats = client().admin().indices().prepareStats().setTypes("type1", "type").execute().actionGet();
|
stats = client().admin().indices().prepareStats().setTypes("type1", "type").execute().actionGet();
|
||||||
assertThat(stats.getPrimaries().getIndexing().getTypeStats().get("type1").getIndexCount(), equalTo(1l));
|
assertThat(stats.getPrimaries().getIndexing().getTypeStats().get("type1").getIndexCount(), equalTo(1l));
|
||||||
assertThat(stats.getPrimaries().getIndexing().getTypeStats().get("type").getIndexCount(), equalTo(1l));
|
assertThat(stats.getPrimaries().getIndexing().getTypeStats().get("type").getIndexCount(), equalTo(1l));
|
||||||
|
assertThat(stats.getPrimaries().getIndexing().getTypeStats().get("type1").getIndexFailedCount(), equalTo(0l));
|
||||||
assertThat(stats.getPrimaries().getIndexing().getTypeStats().get("type2"), nullValue());
|
assertThat(stats.getPrimaries().getIndexing().getTypeStats().get("type2"), nullValue());
|
||||||
assertThat(stats.getPrimaries().getIndexing().getTypeStats().get("type1").getIndexCurrent(), equalTo(0l));
|
assertThat(stats.getPrimaries().getIndexing().getTypeStats().get("type1").getIndexCurrent(), equalTo(0l));
|
||||||
assertThat(stats.getPrimaries().getIndexing().getTypeStats().get("type1").getDeleteCurrent(), equalTo(0l));
|
assertThat(stats.getPrimaries().getIndexing().getTypeStats().get("type1").getDeleteCurrent(), equalTo(0l));
|
||||||
|
|
||||||
|
|
||||||
assertThat(stats.getTotal().getGet().getCount(), equalTo(0l));
|
assertThat(stats.getTotal().getGet().getCount(), equalTo(0l));
|
||||||
// check get
|
// check get
|
||||||
GetResponse getResponse = client().prepareGet("test1", "type1", "1").execute().actionGet();
|
GetResponse getResponse = client().prepareGet("test1", "type1", "1").execute().actionGet();
|
||||||
|
@ -462,6 +465,30 @@ public class IndexStatsIT extends ESIntegTestCase {
|
||||||
assertThat(stats.getTotal().getIndexing(), nullValue());
|
assertThat(stats.getTotal().getIndexing(), nullValue());
|
||||||
assertThat(stats.getTotal().getGet(), nullValue());
|
assertThat(stats.getTotal().getGet(), nullValue());
|
||||||
assertThat(stats.getTotal().getSearch(), nullValue());
|
assertThat(stats.getTotal().getSearch(), nullValue());
|
||||||
|
|
||||||
|
// index failed
|
||||||
|
try {
|
||||||
|
client().prepareIndex("test1", "type1", Integer.toString(1)).setSource("field", "value").setVersion(1)
|
||||||
|
.setVersionType(VersionType.EXTERNAL).execute().actionGet();
|
||||||
|
fail("Expected a version conflict");
|
||||||
|
} catch (VersionConflictEngineException e) {}
|
||||||
|
try {
|
||||||
|
client().prepareIndex("test1", "type2", Integer.toString(1)).setSource("field", "value").setVersion(1)
|
||||||
|
.setVersionType(VersionType.EXTERNAL).execute().actionGet();
|
||||||
|
fail("Expected a version conflict");
|
||||||
|
} catch (VersionConflictEngineException e) {}
|
||||||
|
try {
|
||||||
|
client().prepareIndex("test2", "type", Integer.toString(1)).setSource("field", "value").setVersion(1)
|
||||||
|
.setVersionType(VersionType.EXTERNAL).execute().actionGet();
|
||||||
|
fail("Expected a version conflict");
|
||||||
|
} catch (VersionConflictEngineException e) {}
|
||||||
|
|
||||||
|
stats = client().admin().indices().prepareStats().setTypes("type1", "type2").execute().actionGet();
|
||||||
|
assertThat(stats.getIndex("test1").getTotal().getIndexing().getTotal().getIndexFailedCount(), equalTo(2l));
|
||||||
|
assertThat(stats.getIndex("test2").getTotal().getIndexing().getTotal().getIndexFailedCount(), equalTo(1l));
|
||||||
|
assertThat(stats.getPrimaries().getIndexing().getTypeStats().get("type1").getIndexFailedCount(), equalTo(1L));
|
||||||
|
assertThat(stats.getPrimaries().getIndexing().getTypeStats().get("type2").getIndexFailedCount(), equalTo(1L));
|
||||||
|
assertThat(stats.getTotal().getIndexing().getTotal().getIndexFailedCount(), equalTo(3L));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|
Loading…
Reference in New Issue