1use reqwest;
13use serde::{Deserialize, Serialize};
14use crate::{apis::ResponseContent, models};
15use super::{Error, configuration};
16
17
18#[derive(Debug, Clone, Serialize, Deserialize)]
20#[serde(untagged)]
21pub enum ClearIndexError {
22 UnknownValue(serde_json::Value),
23}
24
25#[derive(Debug, Clone, Serialize, Deserialize)]
27#[serde(untagged)]
28pub enum CountSearchLogsIndexError {
29 UnknownValue(serde_json::Value),
30}
31
32#[derive(Debug, Clone, Serialize, Deserialize)]
34#[serde(untagged)]
35pub enum GetIndexDiskStorageSizesError {
36 UnknownValue(serde_json::Value),
37}
38
39#[derive(Debug, Clone, Serialize, Deserialize)]
41#[serde(untagged)]
42pub enum GetIndexStorageSizesError {
43 UnknownValue(serde_json::Value),
44}
45
46#[derive(Debug, Clone, Serialize, Deserialize)]
48#[serde(untagged)]
49pub enum GetIndexerStatusError {
50 UnknownValue(serde_json::Value),
51}
52
53#[derive(Debug, Clone, Serialize, Deserialize)]
55#[serde(untagged)]
56pub enum SearchJobsIndexError {
57 UnknownValue(serde_json::Value),
58}
59
60#[derive(Debug, Clone, Serialize, Deserialize)]
62#[serde(untagged)]
63pub enum SearchLogsIndexError {
64 UnknownValue(serde_json::Value),
65}
66
67
68pub async fn clear_index(configuration: &configuration::Configuration, idx_name: &str) -> Result<String, Error<ClearIndexError>> {
69 let local_var_configuration = configuration;
70
71 let local_var_client = &local_var_configuration.client;
72
73 let local_var_uri_str = format!("{}/indexer/delete/{idx_name}", local_var_configuration.base_path, idx_name=crate::apis::urlencode(idx_name));
74 let mut local_var_req_builder = local_var_client.request(reqwest::Method::DELETE, local_var_uri_str.as_str());
75
76 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
77 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
78 }
79 if let Some(ref local_var_token) = local_var_configuration.bearer_access_token {
80 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
81 };
82
83 let local_var_req = local_var_req_builder.build()?;
84 let local_var_resp = local_var_client.execute(local_var_req).await?;
85
86 let local_var_status = local_var_resp.status();
87 let local_var_content = local_var_resp.text().await?;
88
89 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
90 crate::from_str_patched(&local_var_content).map_err(Error::from)
91 } else {
92 let local_var_entity: Option<ClearIndexError> = crate::from_str_patched(&local_var_content).ok();
93 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
94 Err(Error::ResponseError(local_var_error))
95 }
96}
97
98pub async fn count_search_logs_index(configuration: &configuration::Configuration, search_query: &str, min_ts: Option<String>, max_ts: Option<String>) -> Result<models::CountSearchLogsIndex200Response, Error<CountSearchLogsIndexError>> {
99 let local_var_configuration = configuration;
100
101 let local_var_client = &local_var_configuration.client;
102
103 let local_var_uri_str = format!("{}/srch/index/search/count_service_logs", local_var_configuration.base_path);
104 let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
105
106 local_var_req_builder = local_var_req_builder.query(&[("search_query", &search_query.to_string())]);
107 if let Some(ref local_var_str) = min_ts {
108 local_var_req_builder = local_var_req_builder.query(&[("min_ts", &local_var_str.to_string())]);
109 }
110 if let Some(ref local_var_str) = max_ts {
111 local_var_req_builder = local_var_req_builder.query(&[("max_ts", &local_var_str.to_string())]);
112 }
113 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
114 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
115 }
116 if let Some(ref local_var_token) = local_var_configuration.bearer_access_token {
117 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
118 };
119
120 let local_var_req = local_var_req_builder.build()?;
121 let local_var_resp = local_var_client.execute(local_var_req).await?;
122
123 let local_var_status = local_var_resp.status();
124 let local_var_content = local_var_resp.text().await?;
125
126 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
127 crate::from_str_patched(&local_var_content).map_err(Error::from)
128 } else {
129 let local_var_entity: Option<CountSearchLogsIndexError> = crate::from_str_patched(&local_var_content).ok();
130 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
131 Err(Error::ResponseError(local_var_error))
132 }
133}
134
135pub async fn get_index_disk_storage_sizes(configuration: &configuration::Configuration, ) -> Result<models::GetIndexDiskStorageSizes200Response, Error<GetIndexDiskStorageSizesError>> {
136 let local_var_configuration = configuration;
137
138 let local_var_client = &local_var_configuration.client;
139
140 let local_var_uri_str = format!("{}/srch/index/storage/disk", local_var_configuration.base_path);
141 let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
142
143 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
144 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
145 }
146 if let Some(ref local_var_token) = local_var_configuration.bearer_access_token {
147 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
148 };
149
150 let local_var_req = local_var_req_builder.build()?;
151 let local_var_resp = local_var_client.execute(local_var_req).await?;
152
153 let local_var_status = local_var_resp.status();
154 let local_var_content = local_var_resp.text().await?;
155
156 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
157 crate::from_str_patched(&local_var_content).map_err(Error::from)
158 } else {
159 let local_var_entity: Option<GetIndexDiskStorageSizesError> = crate::from_str_patched(&local_var_content).ok();
160 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
161 Err(Error::ResponseError(local_var_error))
162 }
163}
164
165pub async fn get_index_storage_sizes(configuration: &configuration::Configuration, ) -> Result<models::GetIndexStorageSizes200Response, Error<GetIndexStorageSizesError>> {
166 let local_var_configuration = configuration;
167
168 let local_var_client = &local_var_configuration.client;
169
170 let local_var_uri_str = format!("{}/indexer/storage", local_var_configuration.base_path);
171 let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
172
173 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
174 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
175 }
176 if let Some(ref local_var_token) = local_var_configuration.bearer_access_token {
177 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
178 };
179
180 let local_var_req = local_var_req_builder.build()?;
181 let local_var_resp = local_var_client.execute(local_var_req).await?;
182
183 let local_var_status = local_var_resp.status();
184 let local_var_content = local_var_resp.text().await?;
185
186 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
187 crate::from_str_patched(&local_var_content).map_err(Error::from)
188 } else {
189 let local_var_entity: Option<GetIndexStorageSizesError> = crate::from_str_patched(&local_var_content).ok();
190 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
191 Err(Error::ResponseError(local_var_error))
192 }
193}
194
195pub async fn get_indexer_status(configuration: &configuration::Configuration, ) -> Result<models::GetIndexerStatus200Response, Error<GetIndexerStatusError>> {
196 let local_var_configuration = configuration;
197
198 let local_var_client = &local_var_configuration.client;
199
200 let local_var_uri_str = format!("{}/indexer/status", local_var_configuration.base_path);
201 let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
202
203 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
204 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
205 }
206 if let Some(ref local_var_token) = local_var_configuration.bearer_access_token {
207 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
208 };
209
210 let local_var_req = local_var_req_builder.build()?;
211 let local_var_resp = local_var_client.execute(local_var_req).await?;
212
213 let local_var_status = local_var_resp.status();
214 let local_var_content = local_var_resp.text().await?;
215
216 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
217 crate::from_str_patched(&local_var_content).map_err(Error::from)
218 } else {
219 let local_var_entity: Option<GetIndexerStatusError> = crate::from_str_patched(&local_var_content).ok();
220 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
221 Err(Error::ResponseError(local_var_error))
222 }
223}
224
225pub async fn search_jobs_index(configuration: &configuration::Configuration, workspace: &str, search_query: &str, pagination_offset: Option<i32>) -> Result<models::SearchJobsIndex200Response, Error<SearchJobsIndexError>> {
226 let local_var_configuration = configuration;
227
228 let local_var_client = &local_var_configuration.client;
229
230 let local_var_uri_str = format!("{}/srch/w/{workspace}/index/search/job", local_var_configuration.base_path, workspace=crate::apis::urlencode(workspace));
231 let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
232
233 local_var_req_builder = local_var_req_builder.query(&[("search_query", &search_query.to_string())]);
234 if let Some(ref local_var_str) = pagination_offset {
235 local_var_req_builder = local_var_req_builder.query(&[("pagination_offset", &local_var_str.to_string())]);
236 }
237 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
238 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
239 }
240 if let Some(ref local_var_token) = local_var_configuration.bearer_access_token {
241 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
242 };
243
244 let local_var_req = local_var_req_builder.build()?;
245 let local_var_resp = local_var_client.execute(local_var_req).await?;
246
247 let local_var_status = local_var_resp.status();
248 let local_var_content = local_var_resp.text().await?;
249
250 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
251 crate::from_str_patched(&local_var_content).map_err(Error::from)
252 } else {
253 let local_var_entity: Option<SearchJobsIndexError> = crate::from_str_patched(&local_var_content).ok();
254 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
255 Err(Error::ResponseError(local_var_error))
256 }
257}
258
259pub async fn search_logs_index(configuration: &configuration::Configuration, search_query: &str, mode: &str, hostname: &str, worker_group: Option<&str>, min_ts: Option<String>, max_ts: Option<String>) -> Result<models::SearchLogsIndex200Response, Error<SearchLogsIndexError>> {
260 let local_var_configuration = configuration;
261
262 let local_var_client = &local_var_configuration.client;
263
264 let local_var_uri_str = format!("{}/srch/index/search/service_logs", local_var_configuration.base_path);
265 let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
266
267 local_var_req_builder = local_var_req_builder.query(&[("search_query", &search_query.to_string())]);
268 local_var_req_builder = local_var_req_builder.query(&[("mode", &mode.to_string())]);
269 if let Some(ref local_var_str) = worker_group {
270 local_var_req_builder = local_var_req_builder.query(&[("worker_group", &local_var_str.to_string())]);
271 }
272 local_var_req_builder = local_var_req_builder.query(&[("hostname", &hostname.to_string())]);
273 if let Some(ref local_var_str) = min_ts {
274 local_var_req_builder = local_var_req_builder.query(&[("min_ts", &local_var_str.to_string())]);
275 }
276 if let Some(ref local_var_str) = max_ts {
277 local_var_req_builder = local_var_req_builder.query(&[("max_ts", &local_var_str.to_string())]);
278 }
279 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
280 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
281 }
282 if let Some(ref local_var_token) = local_var_configuration.bearer_access_token {
283 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
284 };
285
286 let local_var_req = local_var_req_builder.build()?;
287 let local_var_resp = local_var_client.execute(local_var_req).await?;
288
289 let local_var_status = local_var_resp.status();
290 let local_var_content = local_var_resp.text().await?;
291
292 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
293 crate::from_str_patched(&local_var_content).map_err(Error::from)
294 } else {
295 let local_var_entity: Option<SearchLogsIndexError> = crate::from_str_patched(&local_var_content).ok();
296 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
297 Err(Error::ResponseError(local_var_error))
298 }
299}
300