diff --git a/src/ApiGenerator/RestSpecification/Core/searchable_snapshots.cache_stats.json b/src/ApiGenerator/RestSpecification/Core/searchable_snapshots.cache_stats.json new file mode 100644 index 00000000000..3cfb71bb11e --- /dev/null +++ b/src/ApiGenerator/RestSpecification/Core/searchable_snapshots.cache_stats.json @@ -0,0 +1,35 @@ +{ + "searchable_snapshots.cache_stats": { + "documentation": { + "url": "https://www.elastic.co/guide/en/elasticsearch/reference/master/searchable-snapshots-apis.html", + "description": "Retrieve node-level cache statistics about searchable snapshots." + }, + "stability": "experimental", + "visibility":"public", + "headers":{ + "accept": [ "application/json"] + }, + "url": { + "paths": [ + { + "path": "/_searchable_snapshots/cache/stats", + "methods": [ + "GET" + ] + }, + { + "path": "/_searchable_snapshots/{node_id}/cache/stats", + "methods": [ + "GET" + ], + "parts":{ + "node_id":{ + "type":"list", + "description":"A comma-separated list of node IDs or names to limit the returned information; use `_local` to return information from the node you're connecting to, leave empty to get information from all nodes" + } + } + } + ] + } + } +} diff --git a/src/Elasticsearch.Net/Api/RequestParameters/RequestParameters.SearchableSnapshots.cs b/src/Elasticsearch.Net/Api/RequestParameters/RequestParameters.SearchableSnapshots.cs index 5a7cc2815f2..58d606ab12c 100644 --- a/src/Elasticsearch.Net/Api/RequestParameters/RequestParameters.SearchableSnapshots.cs +++ b/src/Elasticsearch.Net/Api/RequestParameters/RequestParameters.SearchableSnapshots.cs @@ -25,6 +25,11 @@ // ReSharper disable once CheckNamespace namespace Elasticsearch.Net.Specification.SearchableSnapshotsApi { + ///Request options for CacheStats https://www.elastic.co/guide/en/elasticsearch/reference/master/searchable-snapshots-apis.html + public class CacheStatsRequestParameters : RequestParameters + { + } + ///Request options for ClearCache https://www.elastic.co/guide/en/elasticsearch/reference/master/searchable-snapshots-apis.html public class ClearCacheRequestParameters : RequestParameters { diff --git a/src/Elasticsearch.Net/ElasticLowLevelClient.SearchableSnapshots.cs b/src/Elasticsearch.Net/ElasticLowLevelClient.SearchableSnapshots.cs index 907e16d2901..be8832d1138 100644 --- a/src/Elasticsearch.Net/ElasticLowLevelClient.SearchableSnapshots.cs +++ b/src/Elasticsearch.Net/ElasticLowLevelClient.SearchableSnapshots.cs @@ -44,6 +44,30 @@ internal LowLevelSearchableSnapshotsNamespace(ElasticLowLevelClient client): bas { } + ///GET on /_searchable_snapshots/cache/stats https://www.elastic.co/guide/en/elasticsearch/reference/master/searchable-snapshots-apis.html + ///Request specific configuration such as querystring parameters & request specific connection settings. + ///Note: Experimental within the Elasticsearch server, this functionality is Experimental and may be changed or removed completely in a future release. Elastic will take a best effort approach to fix any issues, but experimental features are not subject to the support SLA of official GA features. This functionality is subject to potential breaking changes within a minor version, meaning that your referencing code may break when this library is upgraded. + public TResponse CacheStats(CacheStatsRequestParameters requestParameters = null) + where TResponse : class, ITransportResponse, new() => DoRequest(GET, "_searchable_snapshots/cache/stats", null, RequestParams(requestParameters)); + ///GET on /_searchable_snapshots/cache/stats https://www.elastic.co/guide/en/elasticsearch/reference/master/searchable-snapshots-apis.html + ///Request specific configuration such as querystring parameters & request specific connection settings. + ///Note: Experimental within the Elasticsearch server, this functionality is Experimental and may be changed or removed completely in a future release. Elastic will take a best effort approach to fix any issues, but experimental features are not subject to the support SLA of official GA features. This functionality is subject to potential breaking changes within a minor version, meaning that your referencing code may break when this library is upgraded. + [MapsApi("searchable_snapshots.cache_stats", "")] + public Task CacheStatsAsync(CacheStatsRequestParameters requestParameters = null, CancellationToken ctx = default) + where TResponse : class, ITransportResponse, new() => DoRequestAsync(GET, "_searchable_snapshots/cache/stats", ctx, null, RequestParams(requestParameters)); + ///GET on /_searchable_snapshots/{node_id}/cache/stats https://www.elastic.co/guide/en/elasticsearch/reference/master/searchable-snapshots-apis.html + ///A comma-separated list of node IDs or names to limit the returned information; use `_local` to return information from the node you're connecting to, leave empty to get information from all nodes + ///Request specific configuration such as querystring parameters & request specific connection settings. + ///Note: Experimental within the Elasticsearch server, this functionality is Experimental and may be changed or removed completely in a future release. Elastic will take a best effort approach to fix any issues, but experimental features are not subject to the support SLA of official GA features. This functionality is subject to potential breaking changes within a minor version, meaning that your referencing code may break when this library is upgraded. + public TResponse CacheStats(string nodeId, CacheStatsRequestParameters requestParameters = null) + where TResponse : class, ITransportResponse, new() => DoRequest(GET, Url($"_searchable_snapshots/{nodeId:nodeId}/cache/stats"), null, RequestParams(requestParameters)); + ///GET on /_searchable_snapshots/{node_id}/cache/stats https://www.elastic.co/guide/en/elasticsearch/reference/master/searchable-snapshots-apis.html + ///A comma-separated list of node IDs or names to limit the returned information; use `_local` to return information from the node you're connecting to, leave empty to get information from all nodes + ///Request specific configuration such as querystring parameters & request specific connection settings. + ///Note: Experimental within the Elasticsearch server, this functionality is Experimental and may be changed or removed completely in a future release. Elastic will take a best effort approach to fix any issues, but experimental features are not subject to the support SLA of official GA features. This functionality is subject to potential breaking changes within a minor version, meaning that your referencing code may break when this library is upgraded. + [MapsApi("searchable_snapshots.cache_stats", "node_id")] + public Task CacheStatsAsync(string nodeId, CacheStatsRequestParameters requestParameters = null, CancellationToken ctx = default) + where TResponse : class, ITransportResponse, new() => DoRequestAsync(GET, Url($"_searchable_snapshots/{nodeId:nodeId}/cache/stats"), ctx, null, RequestParams(requestParameters)); ///POST on /_searchable_snapshots/cache/clear https://www.elastic.co/guide/en/elasticsearch/reference/master/searchable-snapshots-apis.html ///Request specific configuration such as querystring parameters & request specific connection settings. ///Note: Experimental within the Elasticsearch server, this functionality is Experimental and may be changed or removed completely in a future release. Elastic will take a best effort approach to fix any issues, but experimental features are not subject to the support SLA of official GA features. This functionality is subject to potential breaking changes within a minor version, meaning that your referencing code may break when this library is upgraded.