Skip to main content

rustack_logs_model/
input.rs

1//! Auto-generated from AWS CloudWatch Logs Smithy model. DO NOT EDIT.
2
3use std::collections::HashMap;
4
5use serde::{Deserialize, Serialize};
6
7use crate::types::{
8    Distribution, Entity, ExportTaskStatusCode, InputLogEvent, LogGroupClass, MetricTransformation,
9    OrderBy, PolicyScope, QueryLanguage, QueryStatus,
10};
11
12/// CloudWatch Logs AssociateKmsKeyInput.
13#[derive(Debug, Clone, Default, Serialize, Deserialize)]
14#[serde(rename_all = "camelCase")]
15pub struct AssociateKmsKeyInput {
16    pub kms_key_id: String,
17    #[serde(skip_serializing_if = "Option::is_none")]
18    pub log_group_name: Option<String>,
19    #[serde(skip_serializing_if = "Option::is_none")]
20    pub resource_identifier: Option<String>,
21}
22
23/// CloudWatch Logs CancelExportTaskInput.
24#[derive(Debug, Clone, Default, Serialize, Deserialize)]
25#[serde(rename_all = "camelCase")]
26pub struct CancelExportTaskInput {
27    pub task_id: String,
28}
29
30/// CloudWatch Logs CreateExportTaskInput.
31#[derive(Debug, Clone, Default, Serialize, Deserialize)]
32#[serde(rename_all = "camelCase")]
33pub struct CreateExportTaskInput {
34    pub destination: String,
35    #[serde(skip_serializing_if = "Option::is_none")]
36    pub destination_prefix: Option<String>,
37    pub from: i64,
38    pub log_group_name: String,
39    #[serde(skip_serializing_if = "Option::is_none")]
40    pub log_stream_name_prefix: Option<String>,
41    #[serde(skip_serializing_if = "Option::is_none")]
42    pub task_name: Option<String>,
43    pub to: i64,
44}
45
46/// CloudWatch Logs CreateLogGroupInput.
47#[derive(Debug, Clone, Default, Serialize, Deserialize)]
48#[serde(rename_all = "camelCase")]
49pub struct CreateLogGroupInput {
50    #[serde(skip_serializing_if = "Option::is_none")]
51    pub deletion_protection_enabled: Option<bool>,
52    #[serde(skip_serializing_if = "Option::is_none")]
53    pub kms_key_id: Option<String>,
54    #[serde(skip_serializing_if = "Option::is_none")]
55    pub log_group_class: Option<LogGroupClass>,
56    pub log_group_name: String,
57    #[serde(default, skip_serializing_if = "HashMap::is_empty")]
58    pub tags: HashMap<String, String>,
59}
60
61/// CloudWatch Logs CreateLogStreamInput.
62#[derive(Debug, Clone, Default, Serialize, Deserialize)]
63#[serde(rename_all = "camelCase")]
64pub struct CreateLogStreamInput {
65    pub log_group_name: String,
66    pub log_stream_name: String,
67}
68
69/// CloudWatch Logs DeleteDestinationInput.
70#[derive(Debug, Clone, Default, Serialize, Deserialize)]
71#[serde(rename_all = "camelCase")]
72pub struct DeleteDestinationInput {
73    pub destination_name: String,
74}
75
76/// CloudWatch Logs DeleteLogGroupInput.
77#[derive(Debug, Clone, Default, Serialize, Deserialize)]
78#[serde(rename_all = "camelCase")]
79pub struct DeleteLogGroupInput {
80    pub log_group_name: String,
81}
82
83/// CloudWatch Logs DeleteLogStreamInput.
84#[derive(Debug, Clone, Default, Serialize, Deserialize)]
85#[serde(rename_all = "camelCase")]
86pub struct DeleteLogStreamInput {
87    pub log_group_name: String,
88    pub log_stream_name: String,
89}
90
91/// CloudWatch Logs DeleteMetricFilterInput.
92#[derive(Debug, Clone, Default, Serialize, Deserialize)]
93#[serde(rename_all = "camelCase")]
94pub struct DeleteMetricFilterInput {
95    pub filter_name: String,
96    pub log_group_name: String,
97}
98
99/// CloudWatch Logs DeleteQueryDefinitionInput.
100#[derive(Debug, Clone, Default, Serialize, Deserialize)]
101#[serde(rename_all = "camelCase")]
102pub struct DeleteQueryDefinitionInput {
103    pub query_definition_id: String,
104}
105
106/// CloudWatch Logs DeleteResourcePolicyInput.
107#[derive(Debug, Clone, Default, Serialize, Deserialize)]
108#[serde(rename_all = "camelCase")]
109pub struct DeleteResourcePolicyInput {
110    #[serde(skip_serializing_if = "Option::is_none")]
111    pub expected_revision_id: Option<String>,
112    #[serde(skip_serializing_if = "Option::is_none")]
113    pub policy_name: Option<String>,
114    #[serde(skip_serializing_if = "Option::is_none")]
115    pub resource_arn: Option<String>,
116}
117
118/// CloudWatch Logs DeleteRetentionPolicyInput.
119#[derive(Debug, Clone, Default, Serialize, Deserialize)]
120#[serde(rename_all = "camelCase")]
121pub struct DeleteRetentionPolicyInput {
122    pub log_group_name: String,
123}
124
125/// CloudWatch Logs DeleteSubscriptionFilterInput.
126#[derive(Debug, Clone, Default, Serialize, Deserialize)]
127#[serde(rename_all = "camelCase")]
128pub struct DeleteSubscriptionFilterInput {
129    pub filter_name: String,
130    pub log_group_name: String,
131}
132
133/// CloudWatch Logs DescribeDestinationsInput.
134#[derive(Debug, Clone, Default, Serialize, Deserialize)]
135#[serde(rename_all = "camelCase")]
136pub struct DescribeDestinationsInput {
137    #[serde(rename = "DestinationNamePrefix")]
138    #[serde(skip_serializing_if = "Option::is_none")]
139    pub destination_name_prefix: Option<String>,
140    #[serde(skip_serializing_if = "Option::is_none")]
141    pub limit: Option<i32>,
142    #[serde(skip_serializing_if = "Option::is_none")]
143    pub next_token: Option<String>,
144}
145
146/// CloudWatch Logs DescribeExportTasksInput.
147#[derive(Debug, Clone, Default, Serialize, Deserialize)]
148#[serde(rename_all = "camelCase")]
149pub struct DescribeExportTasksInput {
150    #[serde(skip_serializing_if = "Option::is_none")]
151    pub limit: Option<i32>,
152    #[serde(skip_serializing_if = "Option::is_none")]
153    pub next_token: Option<String>,
154    #[serde(skip_serializing_if = "Option::is_none")]
155    pub status_code: Option<ExportTaskStatusCode>,
156    #[serde(skip_serializing_if = "Option::is_none")]
157    pub task_id: Option<String>,
158}
159
160/// CloudWatch Logs DescribeLogGroupsInput.
161#[derive(Debug, Clone, Default, Serialize, Deserialize)]
162#[serde(rename_all = "camelCase")]
163pub struct DescribeLogGroupsInput {
164    #[serde(default, skip_serializing_if = "Vec::is_empty")]
165    pub account_identifiers: Vec<String>,
166    #[serde(skip_serializing_if = "Option::is_none")]
167    pub include_linked_accounts: Option<bool>,
168    #[serde(skip_serializing_if = "Option::is_none")]
169    pub limit: Option<i32>,
170    #[serde(skip_serializing_if = "Option::is_none")]
171    pub log_group_class: Option<LogGroupClass>,
172    #[serde(default, skip_serializing_if = "Vec::is_empty")]
173    pub log_group_identifiers: Vec<String>,
174    #[serde(skip_serializing_if = "Option::is_none")]
175    pub log_group_name_pattern: Option<String>,
176    #[serde(skip_serializing_if = "Option::is_none")]
177    pub log_group_name_prefix: Option<String>,
178    #[serde(skip_serializing_if = "Option::is_none")]
179    pub next_token: Option<String>,
180}
181
182/// CloudWatch Logs DescribeLogStreamsInput.
183#[derive(Debug, Clone, Default, Serialize, Deserialize)]
184#[serde(rename_all = "camelCase")]
185pub struct DescribeLogStreamsInput {
186    #[serde(skip_serializing_if = "Option::is_none")]
187    pub descending: Option<bool>,
188    #[serde(skip_serializing_if = "Option::is_none")]
189    pub limit: Option<i32>,
190    #[serde(skip_serializing_if = "Option::is_none")]
191    pub log_group_identifier: Option<String>,
192    #[serde(skip_serializing_if = "Option::is_none")]
193    pub log_group_name: Option<String>,
194    #[serde(skip_serializing_if = "Option::is_none")]
195    pub log_stream_name_prefix: Option<String>,
196    #[serde(skip_serializing_if = "Option::is_none")]
197    pub next_token: Option<String>,
198    #[serde(skip_serializing_if = "Option::is_none")]
199    pub order_by: Option<OrderBy>,
200}
201
202/// CloudWatch Logs DescribeMetricFiltersInput.
203#[derive(Debug, Clone, Default, Serialize, Deserialize)]
204#[serde(rename_all = "camelCase")]
205pub struct DescribeMetricFiltersInput {
206    #[serde(skip_serializing_if = "Option::is_none")]
207    pub filter_name_prefix: Option<String>,
208    #[serde(skip_serializing_if = "Option::is_none")]
209    pub limit: Option<i32>,
210    #[serde(skip_serializing_if = "Option::is_none")]
211    pub log_group_name: Option<String>,
212    #[serde(skip_serializing_if = "Option::is_none")]
213    pub metric_name: Option<String>,
214    #[serde(skip_serializing_if = "Option::is_none")]
215    pub metric_namespace: Option<String>,
216    #[serde(skip_serializing_if = "Option::is_none")]
217    pub next_token: Option<String>,
218}
219
220/// CloudWatch Logs DescribeQueriesInput.
221#[derive(Debug, Clone, Default, Serialize, Deserialize)]
222#[serde(rename_all = "camelCase")]
223pub struct DescribeQueriesInput {
224    #[serde(skip_serializing_if = "Option::is_none")]
225    pub log_group_name: Option<String>,
226    #[serde(skip_serializing_if = "Option::is_none")]
227    pub max_results: Option<i32>,
228    #[serde(skip_serializing_if = "Option::is_none")]
229    pub next_token: Option<String>,
230    #[serde(skip_serializing_if = "Option::is_none")]
231    pub query_language: Option<QueryLanguage>,
232    #[serde(skip_serializing_if = "Option::is_none")]
233    pub status: Option<QueryStatus>,
234}
235
236/// CloudWatch Logs DescribeQueryDefinitionsInput.
237#[derive(Debug, Clone, Default, Serialize, Deserialize)]
238#[serde(rename_all = "camelCase")]
239pub struct DescribeQueryDefinitionsInput {
240    #[serde(skip_serializing_if = "Option::is_none")]
241    pub max_results: Option<i32>,
242    #[serde(skip_serializing_if = "Option::is_none")]
243    pub next_token: Option<String>,
244    #[serde(skip_serializing_if = "Option::is_none")]
245    pub query_definition_name_prefix: Option<String>,
246    #[serde(skip_serializing_if = "Option::is_none")]
247    pub query_language: Option<QueryLanguage>,
248}
249
250/// CloudWatch Logs DescribeResourcePoliciesInput.
251#[derive(Debug, Clone, Default, Serialize, Deserialize)]
252#[serde(rename_all = "camelCase")]
253pub struct DescribeResourcePoliciesInput {
254    #[serde(skip_serializing_if = "Option::is_none")]
255    pub limit: Option<i32>,
256    #[serde(skip_serializing_if = "Option::is_none")]
257    pub next_token: Option<String>,
258    #[serde(skip_serializing_if = "Option::is_none")]
259    pub policy_scope: Option<PolicyScope>,
260    #[serde(skip_serializing_if = "Option::is_none")]
261    pub resource_arn: Option<String>,
262}
263
264/// CloudWatch Logs DescribeSubscriptionFiltersInput.
265#[derive(Debug, Clone, Default, Serialize, Deserialize)]
266#[serde(rename_all = "camelCase")]
267pub struct DescribeSubscriptionFiltersInput {
268    #[serde(skip_serializing_if = "Option::is_none")]
269    pub filter_name_prefix: Option<String>,
270    #[serde(skip_serializing_if = "Option::is_none")]
271    pub limit: Option<i32>,
272    pub log_group_name: String,
273    #[serde(skip_serializing_if = "Option::is_none")]
274    pub next_token: Option<String>,
275}
276
277/// CloudWatch Logs DisassociateKmsKeyInput.
278#[derive(Debug, Clone, Default, Serialize, Deserialize)]
279#[serde(rename_all = "camelCase")]
280pub struct DisassociateKmsKeyInput {
281    #[serde(skip_serializing_if = "Option::is_none")]
282    pub log_group_name: Option<String>,
283    #[serde(skip_serializing_if = "Option::is_none")]
284    pub resource_identifier: Option<String>,
285}
286
287/// CloudWatch Logs FilterLogEventsInput.
288#[derive(Debug, Clone, Default, Serialize, Deserialize)]
289#[serde(rename_all = "camelCase")]
290pub struct FilterLogEventsInput {
291    #[serde(skip_serializing_if = "Option::is_none")]
292    pub end_time: Option<i64>,
293    #[serde(skip_serializing_if = "Option::is_none")]
294    pub filter_pattern: Option<String>,
295    #[serde(skip_serializing_if = "Option::is_none")]
296    pub interleaved: Option<bool>,
297    #[serde(skip_serializing_if = "Option::is_none")]
298    pub limit: Option<i32>,
299    #[serde(skip_serializing_if = "Option::is_none")]
300    pub log_group_identifier: Option<String>,
301    #[serde(skip_serializing_if = "Option::is_none")]
302    pub log_group_name: Option<String>,
303    #[serde(skip_serializing_if = "Option::is_none")]
304    pub log_stream_name_prefix: Option<String>,
305    #[serde(default, skip_serializing_if = "Vec::is_empty")]
306    pub log_stream_names: Vec<String>,
307    #[serde(skip_serializing_if = "Option::is_none")]
308    pub next_token: Option<String>,
309    #[serde(skip_serializing_if = "Option::is_none")]
310    pub start_time: Option<i64>,
311    #[serde(skip_serializing_if = "Option::is_none")]
312    pub unmask: Option<bool>,
313}
314
315/// CloudWatch Logs GetLogEventsInput.
316#[derive(Debug, Clone, Default, Serialize, Deserialize)]
317#[serde(rename_all = "camelCase")]
318pub struct GetLogEventsInput {
319    #[serde(skip_serializing_if = "Option::is_none")]
320    pub end_time: Option<i64>,
321    #[serde(skip_serializing_if = "Option::is_none")]
322    pub limit: Option<i32>,
323    #[serde(skip_serializing_if = "Option::is_none")]
324    pub log_group_identifier: Option<String>,
325    #[serde(skip_serializing_if = "Option::is_none")]
326    pub log_group_name: Option<String>,
327    pub log_stream_name: String,
328    #[serde(skip_serializing_if = "Option::is_none")]
329    pub next_token: Option<String>,
330    #[serde(skip_serializing_if = "Option::is_none")]
331    pub start_from_head: Option<bool>,
332    #[serde(skip_serializing_if = "Option::is_none")]
333    pub start_time: Option<i64>,
334    #[serde(skip_serializing_if = "Option::is_none")]
335    pub unmask: Option<bool>,
336}
337
338/// CloudWatch Logs GetQueryResultsInput.
339#[derive(Debug, Clone, Default, Serialize, Deserialize)]
340#[serde(rename_all = "camelCase")]
341pub struct GetQueryResultsInput {
342    pub query_id: String,
343}
344
345/// CloudWatch Logs ListTagsForResourceInput.
346#[derive(Debug, Clone, Default, Serialize, Deserialize)]
347#[serde(rename_all = "camelCase")]
348pub struct ListTagsForResourceInput {
349    pub resource_arn: String,
350}
351
352/// CloudWatch Logs ListTagsLogGroupInput.
353#[derive(Debug, Clone, Default, Serialize, Deserialize)]
354#[serde(rename_all = "camelCase")]
355pub struct ListTagsLogGroupInput {
356    pub log_group_name: String,
357}
358
359/// CloudWatch Logs PutDestinationInput.
360#[derive(Debug, Clone, Default, Serialize, Deserialize)]
361#[serde(rename_all = "camelCase")]
362pub struct PutDestinationInput {
363    pub destination_name: String,
364    pub role_arn: String,
365    #[serde(default, skip_serializing_if = "HashMap::is_empty")]
366    pub tags: HashMap<String, String>,
367    pub target_arn: String,
368}
369
370/// CloudWatch Logs PutDestinationPolicyInput.
371#[derive(Debug, Clone, Default, Serialize, Deserialize)]
372#[serde(rename_all = "camelCase")]
373pub struct PutDestinationPolicyInput {
374    pub access_policy: String,
375    pub destination_name: String,
376    #[serde(skip_serializing_if = "Option::is_none")]
377    pub force_update: Option<bool>,
378}
379
380/// CloudWatch Logs PutLogEventsInput.
381#[derive(Debug, Clone, Default, Serialize, Deserialize)]
382#[serde(rename_all = "camelCase")]
383pub struct PutLogEventsInput {
384    #[serde(skip_serializing_if = "Option::is_none")]
385    pub entity: Option<Entity>,
386    #[serde(default, skip_serializing_if = "Vec::is_empty")]
387    pub log_events: Vec<InputLogEvent>,
388    pub log_group_name: String,
389    pub log_stream_name: String,
390    #[serde(skip_serializing_if = "Option::is_none")]
391    pub sequence_token: Option<String>,
392}
393
394/// CloudWatch Logs PutMetricFilterInput.
395#[derive(Debug, Clone, Default, Serialize, Deserialize)]
396#[serde(rename_all = "camelCase")]
397pub struct PutMetricFilterInput {
398    #[serde(skip_serializing_if = "Option::is_none")]
399    pub apply_on_transformed_logs: Option<bool>,
400    #[serde(default, skip_serializing_if = "Vec::is_empty")]
401    pub emit_system_field_dimensions: Vec<String>,
402    #[serde(skip_serializing_if = "Option::is_none")]
403    pub field_selection_criteria: Option<String>,
404    pub filter_name: String,
405    pub filter_pattern: String,
406    pub log_group_name: String,
407    #[serde(default, skip_serializing_if = "Vec::is_empty")]
408    pub metric_transformations: Vec<MetricTransformation>,
409}
410
411/// CloudWatch Logs PutQueryDefinitionInput.
412#[derive(Debug, Clone, Default, Serialize, Deserialize)]
413#[serde(rename_all = "camelCase")]
414pub struct PutQueryDefinitionInput {
415    #[serde(skip_serializing_if = "Option::is_none")]
416    pub client_token: Option<String>,
417    #[serde(default, skip_serializing_if = "Vec::is_empty")]
418    pub log_group_names: Vec<String>,
419    pub name: String,
420    #[serde(skip_serializing_if = "Option::is_none")]
421    pub query_definition_id: Option<String>,
422    #[serde(skip_serializing_if = "Option::is_none")]
423    pub query_language: Option<QueryLanguage>,
424    pub query_string: String,
425}
426
427/// CloudWatch Logs PutResourcePolicyInput.
428#[derive(Debug, Clone, Default, Serialize, Deserialize)]
429#[serde(rename_all = "camelCase")]
430pub struct PutResourcePolicyInput {
431    #[serde(skip_serializing_if = "Option::is_none")]
432    pub expected_revision_id: Option<String>,
433    #[serde(skip_serializing_if = "Option::is_none")]
434    pub policy_document: Option<String>,
435    #[serde(skip_serializing_if = "Option::is_none")]
436    pub policy_name: Option<String>,
437    #[serde(skip_serializing_if = "Option::is_none")]
438    pub resource_arn: Option<String>,
439}
440
441/// CloudWatch Logs PutRetentionPolicyInput.
442#[derive(Debug, Clone, Default, Serialize, Deserialize)]
443#[serde(rename_all = "camelCase")]
444pub struct PutRetentionPolicyInput {
445    pub log_group_name: String,
446    pub retention_in_days: i32,
447}
448
449/// CloudWatch Logs PutSubscriptionFilterInput.
450#[derive(Debug, Clone, Default, Serialize, Deserialize)]
451#[serde(rename_all = "camelCase")]
452pub struct PutSubscriptionFilterInput {
453    #[serde(skip_serializing_if = "Option::is_none")]
454    pub apply_on_transformed_logs: Option<bool>,
455    pub destination_arn: String,
456    #[serde(skip_serializing_if = "Option::is_none")]
457    pub distribution: Option<Distribution>,
458    #[serde(default, skip_serializing_if = "Vec::is_empty")]
459    pub emit_system_fields: Vec<String>,
460    #[serde(skip_serializing_if = "Option::is_none")]
461    pub field_selection_criteria: Option<String>,
462    pub filter_name: String,
463    pub filter_pattern: String,
464    pub log_group_name: String,
465    #[serde(skip_serializing_if = "Option::is_none")]
466    pub role_arn: Option<String>,
467}
468
469/// CloudWatch Logs StartQueryInput.
470#[derive(Debug, Clone, Default, Serialize, Deserialize)]
471#[serde(rename_all = "camelCase")]
472pub struct StartQueryInput {
473    pub end_time: i64,
474    #[serde(skip_serializing_if = "Option::is_none")]
475    pub limit: Option<i32>,
476    #[serde(default, skip_serializing_if = "Vec::is_empty")]
477    pub log_group_identifiers: Vec<String>,
478    #[serde(skip_serializing_if = "Option::is_none")]
479    pub log_group_name: Option<String>,
480    #[serde(default, skip_serializing_if = "Vec::is_empty")]
481    pub log_group_names: Vec<String>,
482    #[serde(skip_serializing_if = "Option::is_none")]
483    pub query_language: Option<QueryLanguage>,
484    pub query_string: String,
485    pub start_time: i64,
486}
487
488/// CloudWatch Logs StopQueryInput.
489#[derive(Debug, Clone, Default, Serialize, Deserialize)]
490#[serde(rename_all = "camelCase")]
491pub struct StopQueryInput {
492    pub query_id: String,
493}
494
495/// CloudWatch Logs TagLogGroupInput.
496#[derive(Debug, Clone, Default, Serialize, Deserialize)]
497#[serde(rename_all = "camelCase")]
498pub struct TagLogGroupInput {
499    pub log_group_name: String,
500    #[serde(default, skip_serializing_if = "HashMap::is_empty")]
501    pub tags: HashMap<String, String>,
502}
503
504/// CloudWatch Logs TagResourceInput.
505#[derive(Debug, Clone, Default, Serialize, Deserialize)]
506#[serde(rename_all = "camelCase")]
507pub struct TagResourceInput {
508    pub resource_arn: String,
509    #[serde(default, skip_serializing_if = "HashMap::is_empty")]
510    pub tags: HashMap<String, String>,
511}
512
513/// CloudWatch Logs TestMetricFilterInput.
514#[derive(Debug, Clone, Default, Serialize, Deserialize)]
515#[serde(rename_all = "camelCase")]
516pub struct TestMetricFilterInput {
517    pub filter_pattern: String,
518    #[serde(default, skip_serializing_if = "Vec::is_empty")]
519    pub log_event_messages: Vec<String>,
520}
521
522/// CloudWatch Logs UntagLogGroupInput.
523#[derive(Debug, Clone, Default, Serialize, Deserialize)]
524#[serde(rename_all = "camelCase")]
525pub struct UntagLogGroupInput {
526    pub log_group_name: String,
527    #[serde(default, skip_serializing_if = "Vec::is_empty")]
528    pub tags: Vec<String>,
529}
530
531/// CloudWatch Logs UntagResourceInput.
532#[derive(Debug, Clone, Default, Serialize, Deserialize)]
533#[serde(rename_all = "camelCase")]
534pub struct UntagResourceInput {
535    pub resource_arn: String,
536    #[serde(default, skip_serializing_if = "Vec::is_empty")]
537    pub tag_keys: Vec<String>,
538}