Struct datadog_api_client::datadogV1::model::model_host_map_widget_definition::HostMapWidgetDefinition
source · #[non_exhaustive]pub struct HostMapWidgetDefinition {Show 14 fields
pub custom_links: Option<Vec<WidgetCustomLink>>,
pub group: Option<Vec<String>>,
pub no_group_hosts: Option<bool>,
pub no_metric_hosts: Option<bool>,
pub node_type: Option<WidgetNodeType>,
pub notes: Option<String>,
pub requests: HostMapWidgetDefinitionRequests,
pub scope: Option<Vec<String>>,
pub style: Option<HostMapWidgetDefinitionStyle>,
pub title: Option<String>,
pub title_align: Option<WidgetTextAlign>,
pub title_size: Option<String>,
pub type_: HostMapWidgetDefinitionType,
pub additional_properties: BTreeMap<String, Value>,
/* private fields */
}Expand description
The host map widget graphs any metric across your hosts using the same visualization available from the main Host Map page.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.custom_links: Option<Vec<WidgetCustomLink>>List of custom links.
group: Option<Vec<String>>List of tag prefixes to group by.
no_group_hosts: Option<bool>Whether to show the hosts that don’t fit in a group.
no_metric_hosts: Option<bool>Whether to show the hosts with no metrics.
node_type: Option<WidgetNodeType>Which type of node to use in the map.
notes: Option<String>Notes on the title.
requests: HostMapWidgetDefinitionRequestsList of definitions.
scope: Option<Vec<String>>List of tags used to filter the map.
style: Option<HostMapWidgetDefinitionStyle>The style to apply to the widget.
title: Option<String>Title of the widget.
title_align: Option<WidgetTextAlign>How to align the text on the widget.
title_size: Option<String>Size of the title.
type_: HostMapWidgetDefinitionTypeType of the host map widget.
additional_properties: BTreeMap<String, Value>Implementations§
source§impl HostMapWidgetDefinition
impl HostMapWidgetDefinition
sourcepub fn new(
requests: HostMapWidgetDefinitionRequests,
type_: HostMapWidgetDefinitionType,
) -> HostMapWidgetDefinition
pub fn new( requests: HostMapWidgetDefinitionRequests, type_: HostMapWidgetDefinitionType, ) -> HostMapWidgetDefinition
Examples found in repository?
examples/v1_dashboards_CreateDashboard_858397694.rs (lines 21-25)
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
async fn main() {
let body = Dashboard::new(
DashboardLayoutType::ORDERED,
"".to_string(),
vec![Widget::new(WidgetDefinition::HostMapWidgetDefinition(
Box::new(HostMapWidgetDefinition::new(
HostMapWidgetDefinitionRequests::new()
.fill(HostMapRequest::new().q("avg:system.cpu.user{*}".to_string())),
HostMapWidgetDefinitionType::HOSTMAP,
)),
))],
)
.description(None)
.is_read_only(false)
.notify_list(Some(vec![]))
.reflow_type(DashboardReflowType::AUTO)
.restricted_roles(vec![])
.template_variables(Some(vec![DashboardTemplateVariable::new(
"host1".to_string(),
)
.available_values(Some(vec![
"my-host".to_string(),
"host1".to_string(),
"host2".to_string(),
]))
.defaults(vec!["my-host".to_string()])
.prefix(Some("host".to_string()))]));
let configuration = datadog::Configuration::new();
let api = DashboardsAPI::with_config(configuration);
let resp = api.create_dashboard(body).await;
if let Ok(value) = resp {
println!("{:#?}", value);
} else {
println!("{:#?}", resp.unwrap_err());
}
}More examples
examples/v1_dashboards_CreateDashboard_1200099236.rs (lines 24-29)
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
async fn main() {
let body = Dashboard::new(
DashboardLayoutType::FREE,
"Example-Dashboard".to_string(),
vec![
Widget::new(WidgetDefinition::HostMapWidgetDefinition(Box::new(
HostMapWidgetDefinition::new(
HostMapWidgetDefinitionRequests::new().fill(
HostMapRequest::new().q("avg:system.cpu.user{*} by {host}".to_string()),
),
HostMapWidgetDefinitionType::HOSTMAP,
)
.no_group_hosts(true)
.no_metric_hosts(true)
.node_type(WidgetNodeType::HOST)
.style(
HostMapWidgetDefinitionStyle::new()
.palette("green_to_orange".to_string())
.palette_flip(false),
)
.title("".to_string())
.title_align(WidgetTextAlign::LEFT)
.title_size("16".to_string()),
)))
.layout(WidgetLayout::new(22, 47, 0, 0)),
],
)
.description(None)
.is_read_only(false)
.notify_list(Some(vec![]))
.template_variables(Some(vec![]));
let configuration = datadog::Configuration::new();
let api = DashboardsAPI::with_config(configuration);
let resp = api.create_dashboard(body).await;
if let Ok(value) = resp {
println!("{:#?}", value);
} else {
println!("{:#?}", resp.unwrap_err());
}
}examples/v1_dashboards_CreateDashboard_2850365602.rs (lines 24-28)
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
async fn main() {
let body = Dashboard::new(
DashboardLayoutType::ORDERED,
"".to_string(),
vec![Widget::new(WidgetDefinition::HostMapWidgetDefinition(
Box::new(HostMapWidgetDefinition::new(
HostMapWidgetDefinitionRequests::new()
.fill(HostMapRequest::new().q("avg:system.cpu.user{*}".to_string())),
HostMapWidgetDefinitionType::HOSTMAP,
)),
))],
)
.description(None)
.is_read_only(false)
.notify_list(Some(vec![]))
.reflow_type(DashboardReflowType::AUTO)
.restricted_roles(vec![])
.template_variable_presets(Some(vec![DashboardTemplateVariablePreset::new()
.name("my saved view".to_string())
.template_variables(vec![DashboardTemplateVariablePresetValue::new()
.name("datacenter".to_string())
.values(vec!["*".to_string(), "my-host".to_string()])])]))
.template_variables(Some(vec![DashboardTemplateVariable::new(
"host1".to_string(),
)
.available_values(Some(vec![
"my-host".to_string(),
"host1".to_string(),
"host2".to_string(),
]))
.defaults(vec!["my-host".to_string()])
.prefix(Some("host".to_string()))]));
let configuration = datadog::Configuration::new();
let api = DashboardsAPI::with_config(configuration);
let resp = api.create_dashboard(body).await;
if let Ok(value) = resp {
println!("{:#?}", value);
} else {
println!("{:#?}", resp.unwrap_err());
}
}pub fn custom_links(self, value: Vec<WidgetCustomLink>) -> Self
pub fn group(self, value: Vec<String>) -> Self
sourcepub fn no_group_hosts(self, value: bool) -> Self
pub fn no_group_hosts(self, value: bool) -> Self
Examples found in repository?
examples/v1_dashboards_CreateDashboard_1200099236.rs (line 30)
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
async fn main() {
let body = Dashboard::new(
DashboardLayoutType::FREE,
"Example-Dashboard".to_string(),
vec![
Widget::new(WidgetDefinition::HostMapWidgetDefinition(Box::new(
HostMapWidgetDefinition::new(
HostMapWidgetDefinitionRequests::new().fill(
HostMapRequest::new().q("avg:system.cpu.user{*} by {host}".to_string()),
),
HostMapWidgetDefinitionType::HOSTMAP,
)
.no_group_hosts(true)
.no_metric_hosts(true)
.node_type(WidgetNodeType::HOST)
.style(
HostMapWidgetDefinitionStyle::new()
.palette("green_to_orange".to_string())
.palette_flip(false),
)
.title("".to_string())
.title_align(WidgetTextAlign::LEFT)
.title_size("16".to_string()),
)))
.layout(WidgetLayout::new(22, 47, 0, 0)),
],
)
.description(None)
.is_read_only(false)
.notify_list(Some(vec![]))
.template_variables(Some(vec![]));
let configuration = datadog::Configuration::new();
let api = DashboardsAPI::with_config(configuration);
let resp = api.create_dashboard(body).await;
if let Ok(value) = resp {
println!("{:#?}", value);
} else {
println!("{:#?}", resp.unwrap_err());
}
}sourcepub fn no_metric_hosts(self, value: bool) -> Self
pub fn no_metric_hosts(self, value: bool) -> Self
Examples found in repository?
examples/v1_dashboards_CreateDashboard_1200099236.rs (line 31)
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
async fn main() {
let body = Dashboard::new(
DashboardLayoutType::FREE,
"Example-Dashboard".to_string(),
vec![
Widget::new(WidgetDefinition::HostMapWidgetDefinition(Box::new(
HostMapWidgetDefinition::new(
HostMapWidgetDefinitionRequests::new().fill(
HostMapRequest::new().q("avg:system.cpu.user{*} by {host}".to_string()),
),
HostMapWidgetDefinitionType::HOSTMAP,
)
.no_group_hosts(true)
.no_metric_hosts(true)
.node_type(WidgetNodeType::HOST)
.style(
HostMapWidgetDefinitionStyle::new()
.palette("green_to_orange".to_string())
.palette_flip(false),
)
.title("".to_string())
.title_align(WidgetTextAlign::LEFT)
.title_size("16".to_string()),
)))
.layout(WidgetLayout::new(22, 47, 0, 0)),
],
)
.description(None)
.is_read_only(false)
.notify_list(Some(vec![]))
.template_variables(Some(vec![]));
let configuration = datadog::Configuration::new();
let api = DashboardsAPI::with_config(configuration);
let resp = api.create_dashboard(body).await;
if let Ok(value) = resp {
println!("{:#?}", value);
} else {
println!("{:#?}", resp.unwrap_err());
}
}sourcepub fn node_type(self, value: WidgetNodeType) -> Self
pub fn node_type(self, value: WidgetNodeType) -> Self
Examples found in repository?
examples/v1_dashboards_CreateDashboard_1200099236.rs (line 32)
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
async fn main() {
let body = Dashboard::new(
DashboardLayoutType::FREE,
"Example-Dashboard".to_string(),
vec![
Widget::new(WidgetDefinition::HostMapWidgetDefinition(Box::new(
HostMapWidgetDefinition::new(
HostMapWidgetDefinitionRequests::new().fill(
HostMapRequest::new().q("avg:system.cpu.user{*} by {host}".to_string()),
),
HostMapWidgetDefinitionType::HOSTMAP,
)
.no_group_hosts(true)
.no_metric_hosts(true)
.node_type(WidgetNodeType::HOST)
.style(
HostMapWidgetDefinitionStyle::new()
.palette("green_to_orange".to_string())
.palette_flip(false),
)
.title("".to_string())
.title_align(WidgetTextAlign::LEFT)
.title_size("16".to_string()),
)))
.layout(WidgetLayout::new(22, 47, 0, 0)),
],
)
.description(None)
.is_read_only(false)
.notify_list(Some(vec![]))
.template_variables(Some(vec![]));
let configuration = datadog::Configuration::new();
let api = DashboardsAPI::with_config(configuration);
let resp = api.create_dashboard(body).await;
if let Ok(value) = resp {
println!("{:#?}", value);
} else {
println!("{:#?}", resp.unwrap_err());
}
}pub fn notes(self, value: String) -> Self
pub fn scope(self, value: Vec<String>) -> Self
sourcepub fn style(self, value: HostMapWidgetDefinitionStyle) -> Self
pub fn style(self, value: HostMapWidgetDefinitionStyle) -> Self
Examples found in repository?
examples/v1_dashboards_CreateDashboard_1200099236.rs (lines 33-37)
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
async fn main() {
let body = Dashboard::new(
DashboardLayoutType::FREE,
"Example-Dashboard".to_string(),
vec![
Widget::new(WidgetDefinition::HostMapWidgetDefinition(Box::new(
HostMapWidgetDefinition::new(
HostMapWidgetDefinitionRequests::new().fill(
HostMapRequest::new().q("avg:system.cpu.user{*} by {host}".to_string()),
),
HostMapWidgetDefinitionType::HOSTMAP,
)
.no_group_hosts(true)
.no_metric_hosts(true)
.node_type(WidgetNodeType::HOST)
.style(
HostMapWidgetDefinitionStyle::new()
.palette("green_to_orange".to_string())
.palette_flip(false),
)
.title("".to_string())
.title_align(WidgetTextAlign::LEFT)
.title_size("16".to_string()),
)))
.layout(WidgetLayout::new(22, 47, 0, 0)),
],
)
.description(None)
.is_read_only(false)
.notify_list(Some(vec![]))
.template_variables(Some(vec![]));
let configuration = datadog::Configuration::new();
let api = DashboardsAPI::with_config(configuration);
let resp = api.create_dashboard(body).await;
if let Ok(value) = resp {
println!("{:#?}", value);
} else {
println!("{:#?}", resp.unwrap_err());
}
}sourcepub fn title(self, value: String) -> Self
pub fn title(self, value: String) -> Self
Examples found in repository?
examples/v1_dashboards_CreateDashboard_1200099236.rs (line 38)
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
async fn main() {
let body = Dashboard::new(
DashboardLayoutType::FREE,
"Example-Dashboard".to_string(),
vec![
Widget::new(WidgetDefinition::HostMapWidgetDefinition(Box::new(
HostMapWidgetDefinition::new(
HostMapWidgetDefinitionRequests::new().fill(
HostMapRequest::new().q("avg:system.cpu.user{*} by {host}".to_string()),
),
HostMapWidgetDefinitionType::HOSTMAP,
)
.no_group_hosts(true)
.no_metric_hosts(true)
.node_type(WidgetNodeType::HOST)
.style(
HostMapWidgetDefinitionStyle::new()
.palette("green_to_orange".to_string())
.palette_flip(false),
)
.title("".to_string())
.title_align(WidgetTextAlign::LEFT)
.title_size("16".to_string()),
)))
.layout(WidgetLayout::new(22, 47, 0, 0)),
],
)
.description(None)
.is_read_only(false)
.notify_list(Some(vec![]))
.template_variables(Some(vec![]));
let configuration = datadog::Configuration::new();
let api = DashboardsAPI::with_config(configuration);
let resp = api.create_dashboard(body).await;
if let Ok(value) = resp {
println!("{:#?}", value);
} else {
println!("{:#?}", resp.unwrap_err());
}
}sourcepub fn title_align(self, value: WidgetTextAlign) -> Self
pub fn title_align(self, value: WidgetTextAlign) -> Self
Examples found in repository?
examples/v1_dashboards_CreateDashboard_1200099236.rs (line 39)
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
async fn main() {
let body = Dashboard::new(
DashboardLayoutType::FREE,
"Example-Dashboard".to_string(),
vec![
Widget::new(WidgetDefinition::HostMapWidgetDefinition(Box::new(
HostMapWidgetDefinition::new(
HostMapWidgetDefinitionRequests::new().fill(
HostMapRequest::new().q("avg:system.cpu.user{*} by {host}".to_string()),
),
HostMapWidgetDefinitionType::HOSTMAP,
)
.no_group_hosts(true)
.no_metric_hosts(true)
.node_type(WidgetNodeType::HOST)
.style(
HostMapWidgetDefinitionStyle::new()
.palette("green_to_orange".to_string())
.palette_flip(false),
)
.title("".to_string())
.title_align(WidgetTextAlign::LEFT)
.title_size("16".to_string()),
)))
.layout(WidgetLayout::new(22, 47, 0, 0)),
],
)
.description(None)
.is_read_only(false)
.notify_list(Some(vec![]))
.template_variables(Some(vec![]));
let configuration = datadog::Configuration::new();
let api = DashboardsAPI::with_config(configuration);
let resp = api.create_dashboard(body).await;
if let Ok(value) = resp {
println!("{:#?}", value);
} else {
println!("{:#?}", resp.unwrap_err());
}
}sourcepub fn title_size(self, value: String) -> Self
pub fn title_size(self, value: String) -> Self
Examples found in repository?
examples/v1_dashboards_CreateDashboard_1200099236.rs (line 40)
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
async fn main() {
let body = Dashboard::new(
DashboardLayoutType::FREE,
"Example-Dashboard".to_string(),
vec![
Widget::new(WidgetDefinition::HostMapWidgetDefinition(Box::new(
HostMapWidgetDefinition::new(
HostMapWidgetDefinitionRequests::new().fill(
HostMapRequest::new().q("avg:system.cpu.user{*} by {host}".to_string()),
),
HostMapWidgetDefinitionType::HOSTMAP,
)
.no_group_hosts(true)
.no_metric_hosts(true)
.node_type(WidgetNodeType::HOST)
.style(
HostMapWidgetDefinitionStyle::new()
.palette("green_to_orange".to_string())
.palette_flip(false),
)
.title("".to_string())
.title_align(WidgetTextAlign::LEFT)
.title_size("16".to_string()),
)))
.layout(WidgetLayout::new(22, 47, 0, 0)),
],
)
.description(None)
.is_read_only(false)
.notify_list(Some(vec![]))
.template_variables(Some(vec![]));
let configuration = datadog::Configuration::new();
let api = DashboardsAPI::with_config(configuration);
let resp = api.create_dashboard(body).await;
if let Ok(value) = resp {
println!("{:#?}", value);
} else {
println!("{:#?}", resp.unwrap_err());
}
}pub fn additional_properties(self, value: BTreeMap<String, Value>) -> Self
Trait Implementations§
source§impl Clone for HostMapWidgetDefinition
impl Clone for HostMapWidgetDefinition
source§fn clone(&self) -> HostMapWidgetDefinition
fn clone(&self) -> HostMapWidgetDefinition
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moresource§impl Debug for HostMapWidgetDefinition
impl Debug for HostMapWidgetDefinition
source§impl<'de> Deserialize<'de> for HostMapWidgetDefinition
impl<'de> Deserialize<'de> for HostMapWidgetDefinition
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
source§impl PartialEq for HostMapWidgetDefinition
impl PartialEq for HostMapWidgetDefinition
source§impl Serialize for HostMapWidgetDefinition
impl Serialize for HostMapWidgetDefinition
impl StructuralPartialEq for HostMapWidgetDefinition
Auto Trait Implementations§
impl Freeze for HostMapWidgetDefinition
impl RefUnwindSafe for HostMapWidgetDefinition
impl Send for HostMapWidgetDefinition
impl Sync for HostMapWidgetDefinition
impl Unpin for HostMapWidgetDefinition
impl UnwindSafe for HostMapWidgetDefinition
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit)