Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 20 additions & 0 deletions .generator/schemas/v2/openapi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -88653,6 +88653,26 @@ paths:
required: false
schema:
type: boolean
- description: 'The number of seconds of look back (from now) used by the `filter[queried]`
filter logic.

Must be sent with `filter[queried]` and is only applied when `filter[queried]=true`.

If `filter[queried]=false`, this parameter is ignored and default queried-window
behavior applies.

If `filter[queried]` is not provided, sending this parameter returns a 400.

For example: `GET /api/v2/metrics?filter[queried]=true&filter[queried][window][seconds]=7776000`.'
example: 7776000
in: query
name: filter[queried][window][seconds]
required: false
schema:
format: int64
maximum: 15552000
minimum: 0
type: integer
- description: 'Filter metrics that have been submitted with the given tags.
Supports boolean and wildcard expressions.

Expand Down
22 changes: 22 additions & 0 deletions src/datadogV2/api/api_metrics.rs
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,12 @@ pub struct ListTagConfigurationsOptionalParams {
/// (Preview) Filter custom metrics that have or have not been queried in the specified window[seconds].
/// If no window is provided or the window is less than 2 hours, a default of 2 hours will be applied.
pub filter_queried: Option<bool>,
/// The number of seconds of look back (from now) used by the `filter[queried]` filter logic.
/// Must be sent with `filter[queried]` and is only applied when `filter[queried]=true`.
/// If `filter[queried]=false`, this parameter is ignored and default queried-window behavior applies.
/// If `filter[queried]` is not provided, sending this parameter returns a 400.
/// For example: `GET /api/v2/metrics?filter[queried]=true&filter[queried][window][seconds]=7776000`.
pub filter_queried_window_seconds: Option<i64>,
/// Filter metrics that have been submitted with the given tags. Supports boolean and wildcard expressions.
/// Can only be combined with the filter[queried] filter.
pub filter_tags: Option<String>,
Expand Down Expand Up @@ -138,6 +144,15 @@ impl ListTagConfigurationsOptionalParams {
self.filter_queried = Some(value);
self
}
/// The number of seconds of look back (from now) used by the `filter[queried]` filter logic.
/// Must be sent with `filter[queried]` and is only applied when `filter[queried]=true`.
/// If `filter[queried]=false`, this parameter is ignored and default queried-window behavior applies.
/// If `filter[queried]` is not provided, sending this parameter returns a 400.
/// For example: `GET /api/v2/metrics?filter[queried]=true&filter[queried][window][seconds]=7776000`.
pub fn filter_queried_window_seconds(mut self, value: i64) -> Self {
self.filter_queried_window_seconds = Some(value);
self
}
/// Filter metrics that have been submitted with the given tags. Supports boolean and wildcard expressions.
/// Can only be combined with the filter[queried] filter.
pub fn filter_tags(mut self, value: String) -> Self {
Expand Down Expand Up @@ -1732,6 +1747,7 @@ impl MetricsAPI {
let filter_metric_type = params.filter_metric_type;
let filter_include_percentiles = params.filter_include_percentiles;
let filter_queried = params.filter_queried;
let filter_queried_window_seconds = params.filter_queried_window_seconds;
let filter_tags = params.filter_tags;
let filter_related_assets = params.filter_related_assets;
let window_seconds = params.window_seconds;
Expand Down Expand Up @@ -1769,6 +1785,12 @@ impl MetricsAPI {
local_req_builder =
local_req_builder.query(&[("filter[queried]", &local_query_param.to_string())]);
};
if let Some(ref local_query_param) = filter_queried_window_seconds {
local_req_builder = local_req_builder.query(&[(
"filter[queried][window][seconds]",
&local_query_param.to_string(),
)]);
};
if let Some(ref local_query_param) = filter_tags {
local_req_builder =
local_req_builder.query(&[("filter[tags]", &local_query_param.to_string())]);
Expand Down
8 changes: 8 additions & 0 deletions tests/scenarios/function_mappings.rs
Original file line number Diff line number Diff line change
Expand Up @@ -30176,6 +30176,9 @@ fn test_v2_list_tag_configurations(world: &mut DatadogWorld, _parameters: &HashM
let filter_queried = _parameters
.get("filter[queried]")
.and_then(|param| Some(serde_json::from_value(param.clone()).unwrap()));
let filter_queried_window_seconds = _parameters
.get("filter[queried][window][seconds]")
.and_then(|param| Some(serde_json::from_value(param.clone()).unwrap()));
let filter_tags = _parameters
.get("filter[tags]")
.and_then(|param| Some(serde_json::from_value(param.clone()).unwrap()));
Expand All @@ -30197,6 +30200,7 @@ fn test_v2_list_tag_configurations(world: &mut DatadogWorld, _parameters: &HashM
params.filter_metric_type = filter_metric_type;
params.filter_include_percentiles = filter_include_percentiles;
params.filter_queried = filter_queried;
params.filter_queried_window_seconds = filter_queried_window_seconds;
params.filter_tags = filter_tags;
params.filter_related_assets = filter_related_assets;
params.window_seconds = window_seconds;
Expand Down Expand Up @@ -30243,6 +30247,9 @@ fn test_v2_list_tag_configurations_with_pagination(
let filter_queried = _parameters
.get("filter[queried]")
.and_then(|param| Some(serde_json::from_value(param.clone()).unwrap()));
let filter_queried_window_seconds = _parameters
.get("filter[queried][window][seconds]")
.and_then(|param| Some(serde_json::from_value(param.clone()).unwrap()));
let filter_tags = _parameters
.get("filter[tags]")
.and_then(|param| Some(serde_json::from_value(param.clone()).unwrap()));
Expand All @@ -30264,6 +30271,7 @@ fn test_v2_list_tag_configurations_with_pagination(
params.filter_metric_type = filter_metric_type;
params.filter_include_percentiles = filter_include_percentiles;
params.filter_queried = filter_queried;
params.filter_queried_window_seconds = filter_queried_window_seconds;
params.filter_tags = filter_tags;
params.filter_related_assets = filter_related_assets;
params.window_seconds = window_seconds;
Expand Down