hanzo-client 8.5.156

Generated client for the Hanzo API — every service, one crate.
Documentation
/*
 * Hanzo Cloud API
 *
 * The Hanzo Cloud API as a customer calls it: every operation under /v1/ except the operator's admin product, relay routes, legacy spellings and capabilities still reached by flag. Tagged by product: the first path segment after /v1/.
 *
 * The version of the OpenAPI document: v1
 * 
 * Generated by: https://openapi-generator.tech
 */

use crate::models;
use serde::{Deserialize, Serialize};

#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct O11yPeriodO11yReductionRulePreview {
    /// AffectedAssets are the dashboards and alerts the rule would touch.
    #[serde(rename = "affectedAssets", skip_serializing_if = "Option::is_none")]
    pub affected_assets: Option<Vec<models::O11yPeriodO11yAffectedAsset>>,
    /// CurrentRetainedSeries is how many survive the rules in force today.
    #[serde(rename = "currentRetainedSeries", skip_serializing_if = "Option::is_none")]
    pub current_retained_series: Option<i32>,
    /// DroppedLabels are the labels the rule would drop.
    #[serde(rename = "droppedLabels", skip_serializing_if = "Option::is_none")]
    pub dropped_labels: Option<Vec<String>>,
    /// EffectiveFrom is when the rule would take effect.
    #[serde(rename = "effectiveFrom", skip_serializing_if = "Option::is_none")]
    pub effective_from: Option<String>,
    /// IngestedSeries is how many series the metric ingests today.
    #[serde(rename = "ingestedSeries", skip_serializing_if = "Option::is_none")]
    pub ingested_series: Option<i32>,
    /// ReductionPercent is the estimated reduction, in percent.
    #[serde(rename = "reductionPercent", skip_serializing_if = "Option::is_none")]
    pub reduction_percent: Option<f64>,
    /// RetainedSeries is how many would survive with the candidate rule.
    #[serde(rename = "retainedSeries", skip_serializing_if = "Option::is_none")]
    pub retained_series: Option<i32>,
}

impl O11yPeriodO11yReductionRulePreview {
    pub fn new() -> O11yPeriodO11yReductionRulePreview {
        O11yPeriodO11yReductionRulePreview {
            affected_assets: None,
            current_retained_series: None,
            dropped_labels: None,
            effective_from: None,
            ingested_series: None,
            reduction_percent: None,
            retained_series: None,
        }
    }
}