Skip to content

Commit

Permalink
Expose search.throttled on _cat/indices (#37073)
Browse files Browse the repository at this point in the history
Today it's very difficult to see which indices are frozen or rather
throttled via the commonly used monitoring APIs. This change adds
a cell to the `_cat/indices` API to render if an index is `search.throttled`

Relates to #34352
  • Loading branch information
s1monw committed Jan 4, 2019
1 parent 80aea56 commit 5a7240e
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 0 deletions.
20 changes: 20 additions & 0 deletions docs/reference/frozen-indices.asciidoc
Expand Up @@ -64,4 +64,24 @@ The default value for `pre_filter_shard_size` is `128` but it's recommended to s
significant overhead associated with this pre-filter phase.
================================

== Monitoring frozen indices

Frozen indices are ordinary indices that use search throttling and a memory efficient shard implementation. For API's like the
`<<cat-indices>>` frozen indicies may identified by an index's `search.throttled` property (`sth`).

[source,js]
--------------------------------------------------
GET /_cat/indices/twitter?v&h=i,sth
--------------------------------------------------
// CONSOLE
// TEST[s/^/PUT twitter\nPOST twitter\/_freeze\n/]

The response looks like:

[source,txt]
--------------------------------------------------
i sth
twitter true
--------------------------------------------------
// TESTRESPONSE[_cat]

Expand Up @@ -41,6 +41,7 @@
import org.elasticsearch.common.settings.Settings;
import org.elasticsearch.common.time.DateFormatters;
import org.elasticsearch.index.Index;
import org.elasticsearch.index.IndexSettings;
import org.elasticsearch.rest.RestController;
import org.elasticsearch.rest.RestRequest;
import org.elasticsearch.rest.RestResponse;
Expand Down Expand Up @@ -335,6 +336,8 @@ protected Table getTableWithHeader(final RestRequest request) {
table.addCell("memory.total", "sibling:pri;alias:tm,memoryTotal;default:false;text-align:right;desc:total used memory");
table.addCell("pri.memory.total", "default:false;text-align:right;desc:total user memory");

table.addCell("search.throttled", "alias:sth;default:false;desc:indicates if the index is search throttled");

table.endHeaders();
return table;
}
Expand All @@ -357,6 +360,7 @@ Table buildTable(RestRequest request, Index[] indices, ClusterHealthResponse res
IndexStats indexStats = stats.getIndices().get(indexName);
IndexMetaData indexMetaData = indexMetaDatas.getIndices().get(indexName);
IndexMetaData.State state = indexMetaData.getState();
boolean searchThrottled = IndexSettings.INDEX_SEARCH_THROTTLED.get(indexMetaData.getSettings());

if (status != null) {
if (state == IndexMetaData.State.CLOSE ||
Expand Down Expand Up @@ -558,6 +562,8 @@ Table buildTable(RestRequest request, Index[] indices, ClusterHealthResponse res
table.addCell(indexStats == null ? null : indexStats.getTotal().getTotalMemory());
table.addCell(indexStats == null ? null : indexStats.getPrimaries().getTotalMemory());

table.addCell(searchThrottled);

table.endRow();
}

Expand Down

0 comments on commit 5a7240e

Please sign in to comment.