From 3251d2a6df3e915acb6334741b9e16af3c0d617a Mon Sep 17 00:00:00 2001 From: Ian Wahbe Date: Tue, 24 Oct 2023 14:10:07 -0700 Subject: [PATCH] Reduce patch set (#357) https://github.com/pulumi/pulumi-datadog/issues/352 failed to update automatically because of patch conflicts. This reduces the patch while improving docs, and so makes it less likely that we will have such conflicts in the future. --- patches/0001-docs-fixups.patch | 24 ++++++ patches/0001-fork.patch | 78 ------------------- .../cmd/pulumi-resource-datadog/schema.json | 16 ++-- provider/resources.go | 14 ++++ sdk/dotnet/DashboardJson.cs | 2 +- sdk/dotnet/DashboardList.cs | 4 +- sdk/dotnet/GetDashboardList.cs | 4 +- sdk/dotnet/PagerDuty/Integration.cs | 1 + sdk/dotnet/PagerDuty/ServiceObject.cs | 6 +- sdk/go/datadog/dashboardJson.go | 2 +- sdk/go/datadog/dashboardList.go | 4 +- sdk/go/datadog/getDashboardList.go | 2 +- sdk/go/datadog/pagerduty/serviceObject.go | 12 +-- .../java/com/pulumi/datadog/Dashboard.java | 4 +- .../com/pulumi/datadog/DashboardJson.java | 2 +- .../com/pulumi/datadog/DashboardList.java | 4 +- .../com/pulumi/datadog/DatadogFunctions.java | 8 +- .../datadog/pagerduty/ServiceObject.java | 4 +- .../datadog/pagerduty/ServiceObjectArgs.java | 8 +- .../pagerduty/inputs/ServiceObjectState.java | 8 +- sdk/nodejs/dashboardJson.ts | 2 +- sdk/nodejs/dashboardList.ts | 4 +- sdk/nodejs/getDashboardList.ts | 4 +- sdk/nodejs/pagerduty/integration.ts | 1 + sdk/nodejs/pagerduty/serviceObject.ts | 6 +- sdk/python/pulumi_datadog/dashboard_json.py | 4 +- sdk/python/pulumi_datadog/dashboard_list.py | 8 +- .../pulumi_datadog/get_dashboard_list.py | 4 +- .../pulumi_datadog/pagerduty/integration.py | 2 + .../pagerduty/service_object.py | 14 ++-- 30 files changed, 110 insertions(+), 146 deletions(-) create mode 100644 patches/0001-docs-fixups.patch delete mode 100644 patches/0001-fork.patch diff --git a/patches/0001-docs-fixups.patch b/patches/0001-docs-fixups.patch new file mode 100644 index 000000000..0b68cfc38 --- /dev/null +++ b/patches/0001-docs-fixups.patch @@ -0,0 +1,24 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Ian Wahbe +Date: Tue, 24 Oct 2023 11:57:12 -0700 +Subject: [PATCH] docs fixups + + +diff --git a/docs/resources/dashboard_list.md b/docs/resources/dashboard_list.md +index 7e38f433..6e27b53a 100644 +--- a/docs/resources/dashboard_list.md ++++ b/docs/resources/dashboard_list.md +@@ -15,6 +15,11 @@ Provides a Datadog dashboard_list resource. This can be used to create and manag + ```terraform + # Create a new Dashboard List with two Dashboards + resource "datadog_dashboard_list" "new_list" { +- name = "Terraform Created List" ++ depends_on = [ ++ datadog_dashboard.screen, ++ datadog_dashboard.time ++ ] ++ ++ name = "Automated Created List" + dash_item { + type = "custom_timeboard" + dash_id = datadog_dashboard.time.id \ No newline at end of file diff --git a/patches/0001-fork.patch b/patches/0001-fork.patch deleted file mode 100644 index eb1ee6a13..000000000 --- a/patches/0001-fork.patch +++ /dev/null @@ -1,78 +0,0 @@ -diff --git b/docs/resources/dashboard_list.md a/docs/resources/dashboard_list.md -index 7e38f433..f01dbf81 100644 ---- b/docs/resources/dashboard_list.md -+++ a/docs/resources/dashboard_list.md -@@ -15,7 +15,12 @@ Provides a Datadog dashboard_list resource. This can be used to create and manag - ```terraform - # Create a new Dashboard List with two Dashboards - resource "datadog_dashboard_list" "new_list" { -- name = "Terraform Created List" -+ depends_on = [ -+ datadog_dashboard.screen, -+ datadog_dashboard.time -+ ] -+ -+ name = "Automated Created List" - dash_item { - type = "custom_timeboard" - dash_id = datadog_dashboard.time.id -@@ -28,7 +33,7 @@ resource "datadog_dashboard_list" "new_list" { - - resource "datadog_dashboard" "time" { - title = "TF Test Layout Dashboard" -- description = "Created using the Datadog provider in Terraform" -+ description = "Created using the Datadog provider" - layout_type = "ordered" - is_read_only = true - widget { -@@ -44,7 +49,7 @@ resource "datadog_dashboard" "time" { - - resource "datadog_dashboard" "screen" { - title = "TF Test Free Layout Dashboard" -- description = "Created using the Datadog provider in Terraform" -+ description = "Created using the Datadog provider" - layout_type = "free" - is_read_only = false - widget { -diff --git b/docs/resources/integration_pagerduty.md a/docs/resources/integration_pagerduty.md -index ec59058e..035dff0b 100644 ---- b/docs/resources/integration_pagerduty.md -+++ a/docs/resources/integration_pagerduty.md -@@ -13,9 +13,6 @@ Provides a Datadog - PagerDuty resource. This can be used to create and manage D - ## Example Usage - - ```terraform --# Note: Until terraform-provider-datadog version 2.1.0, service objects under the services key were specified inside the datadog_integration_pagerduty resource. This was incompatible with multi-configuration-file setups, where users wanted to have individual service objects controlled from different Terraform configuration files. The recommended approach now is specifying service objects as individual resources using datadog_integration_pagerduty_service_object. -- --# Services as Individual Resources - resource "datadog_integration_pagerduty" "pd" { - schedules = [ - "https://ddog.pagerduty.com/schedules/X123VF", -diff --git b/docs/resources/integration_pagerduty_service_object.md a/docs/resources/integration_pagerduty_service_object.md -index c052b1f0..be5d7ee2 100644 ---- b/docs/resources/integration_pagerduty_service_object.md -+++ a/docs/resources/integration_pagerduty_service_object.md -@@ -29,8 +29,8 @@ resource "datadog_integration_pagerduty_service_object" "testing_bar" { - - ### Required - --- `service_key` (String, Sensitive) Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect [drifts](https://www.hashicorp.com/blog/detecting-and-managing-drift-with-terraform). The best way to solve a drift is to manually mark the Service Object resource with [terraform taint](https://www.terraform.io/docs/commands/taint.html) to have it destroyed and recreated. --- `service_name` (String) Your Service name in PagerDuty. -+- **service_key** (String, Sensitive) Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts. -+- **service_name** (String) Your Service name in PagerDuty. - - ### Read-Only - -diff --git b/docs/resources/monitor.md a/docs/resources/monitor.md -index 5878da75..03661e6b 100644 ---- b/docs/resources/monitor.md -+++ a/docs/resources/monitor.md -@@ -41,7 +41,7 @@ resource "datadog_monitor" "foo" { - - Email notifications can be sent to specific users by using the same `@username` notation as events. - - `name` (String) Name of Datadog monitor. --- `query` (String) The monitor query to notify on. Note this is not the same query you see in the UI and the syntax is different depending on the monitor type, please see the [API Reference](https://docs.datadoghq.com/api/v1/monitors/#create-a-monitor) for details. `terraform plan` will validate query contents unless `validate` is set to `false`. -+- `query` (String) The monitor query to notify on. Note this is not the same query you see in the UI and the syntax is different depending on the monitor type, please see the [API Reference](https://docs.datadoghq.com/api/v1/monitors/#create-a-monitor) for details. Provider previews will validate query contents unless `validate` is set to `false`. - - **Note:** APM latency data is now available as Distribution Metrics. Existing monitors have been migrated automatically but all terraformed monitors can still use the existing metrics. We strongly recommend updating monitor definitions to query the new metrics. To learn more, or to see examples of how to update your terraform definitions to utilize the new distribution metrics, see the [detailed doc](https://docs.datadoghq.com/tracing/guide/ddsketch_trace_metrics/). - - `type` (String) The type of the monitor. The mapping from these types to the types found in the Datadog Web UI can be found in the Datadog API [documentation page](https://docs.datadoghq.com/api/v1/monitors/#create-a-monitor). Note: The monitor type cannot be changed after a monitor is created. Valid values are `composite`, `event alert`, `log alert`, `metric alert`, `process alert`, `query alert`, `rum alert`, `service check`, `synthetics alert`, `trace-analytics alert`, `slo alert`, `event-v2 alert`, `audit alert`, `ci-pipelines alert`, `ci-tests alert`, `error-tracking alert`. diff --git a/provider/cmd/pulumi-resource-datadog/schema.json b/provider/cmd/pulumi-resource-datadog/schema.json index b26e72a70..b33191d55 100644 --- a/provider/cmd/pulumi-resource-datadog/schema.json +++ b/provider/cmd/pulumi-resource-datadog/schema.json @@ -34623,7 +34623,7 @@ } }, "datadog:index/dashboard:Dashboard": { - "description": "Provides a Datadog dashboard resource. This can be used to create and manage Datadog dashboards.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.Dashboard;\nimport com.pulumi.datadog.DashboardArgs;\nimport com.pulumi.datadog.inputs.DashboardTemplateVariableArgs;\nimport com.pulumi.datadog.inputs.DashboardTemplateVariablePresetArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetAlertGraphDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetAlertValueDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetChangeDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetDistributionDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetCheckStatusDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetHeatmapDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetHeatmapDefinitionYaxisArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetHostmapDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetHostmapDefinitionRequestArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetHostmapDefinitionStyleArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetNoteDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetQueryValueDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetQueryTableDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetScatterplotDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetScatterplotDefinitionRequestArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetScatterplotDefinitionXaxisArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetScatterplotDefinitionYaxisArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetServicemapDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetTimeseriesDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetTimeseriesDefinitionYaxisArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetToplistDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetGroupDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetServiceLevelObjectiveDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetEventStreamDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetWidgetLayoutArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetEventTimelineDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetFreeTextDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetIframeDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetImageDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetLogStreamDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetLogStreamDefinitionSortArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetManageStatusDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetTraceServiceDefinitionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var orderedDashboard = new Dashboard(\"orderedDashboard\", DashboardArgs.builder() \n .description(\"Created using the Datadog provider in Terraform\")\n .isReadOnly(true)\n .layoutType(\"ordered\")\n .templateVariables( \n DashboardTemplateVariableArgs.builder()\n .default_(\"aws\")\n .name(\"var_1\")\n .prefix(\"host\")\n .build(),\n DashboardTemplateVariableArgs.builder()\n .default_(\"autoscaling\")\n .name(\"var_2\")\n .prefix(\"service_name\")\n .build())\n .templateVariablePresets(DashboardTemplateVariablePresetArgs.builder()\n .name(\"preset_1\")\n .templateVariables( \n DashboardTemplateVariablePresetTemplateVariableArgs.builder()\n .name(\"var_1\")\n .value(\"host.dc\")\n .build(),\n DashboardTemplateVariablePresetTemplateVariableArgs.builder()\n .name(\"var_2\")\n .value(\"my_service\")\n .build())\n .build())\n .title(\"Ordered Layout Dashboard\")\n .widgets( \n DashboardWidgetArgs.builder()\n .alertGraphDefinition(DashboardWidgetAlertGraphDefinitionArgs.builder()\n .alertId(\"895605\")\n .liveSpan(\"1h\")\n .title(\"Widget Title\")\n .vizType(\"timeseries\")\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .alertValueDefinition(DashboardWidgetAlertValueDefinitionArgs.builder()\n .alertId(\"895605\")\n .precision(3)\n .textAlign(\"center\")\n .title(\"Widget Title\")\n .unit(\"b\")\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .alertValueDefinition(DashboardWidgetAlertValueDefinitionArgs.builder()\n .alertId(\"895605\")\n .precision(3)\n .textAlign(\"center\")\n .title(\"Widget Title\")\n .unit(\"b\")\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .changeDefinition(DashboardWidgetChangeDefinitionArgs.builder()\n .liveSpan(\"1h\")\n .request(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .title(\"Widget Title\")\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .distributionDefinition(DashboardWidgetDistributionDefinitionArgs.builder()\n .liveSpan(\"1h\")\n .request(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .title(\"Widget Title\")\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .checkStatusDefinition(DashboardWidgetCheckStatusDefinitionArgs.builder()\n .check(\"aws.ecs.agent_connected\")\n .groupBy( \n \"account\",\n \"cluster\")\n .grouping(\"cluster\")\n .liveSpan(\"1h\")\n .tags( \n \"account:demo\",\n \"cluster:awseb-ruthebdog-env-8-dn3m6u3gvk\")\n .title(\"Widget Title\")\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .heatmapDefinition(DashboardWidgetHeatmapDefinitionArgs.builder()\n .liveSpan(\"1h\")\n .request(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .title(\"Widget Title\")\n .yaxis(DashboardWidgetHeatmapDefinitionYaxisArgs.builder()\n .includeZero(true)\n .max(2)\n .min(1)\n .scale(\"sqrt\")\n .build())\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .hostmapDefinition(DashboardWidgetHostmapDefinitionArgs.builder()\n .group( \n \"host\",\n \"region\")\n .noGroupHosts(true)\n .noMetricHosts(true)\n .nodeType(\"container\")\n .request(DashboardWidgetHostmapDefinitionRequestArgs.builder()\n .fill(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .size(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .build())\n .scope( \n \"region:us-east-1\",\n \"aws_account:727006795293\")\n .style(DashboardWidgetHostmapDefinitionStyleArgs.builder()\n .fillMax(\"20\")\n .fillMin(\"10\")\n .palette(\"yellow_to_green\")\n .paletteFlip(true)\n .build())\n .title(\"Widget Title\")\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .noteDefinition(DashboardWidgetNoteDefinitionArgs.builder()\n .backgroundColor(\"pink\")\n .content(\"note text\")\n .fontSize(\"14\")\n .showTick(true)\n .textAlign(\"center\")\n .tickEdge(\"left\")\n .tickPos(\"50%\")\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .queryValueDefinition(DashboardWidgetQueryValueDefinitionArgs.builder()\n .autoscale(true)\n .customUnit(\"xx\")\n .liveSpan(\"1h\")\n .precision(\"4\")\n .request(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .textAlign(\"right\")\n .title(\"Widget Title\")\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .queryTableDefinition(DashboardWidgetQueryTableDefinitionArgs.builder()\n .liveSpan(\"1h\")\n .request(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .title(\"Widget Title\")\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .scatterplotDefinition(DashboardWidgetScatterplotDefinitionArgs.builder()\n .colorByGroups( \n \"account\",\n \"apm-role-group\")\n .liveSpan(\"1h\")\n .request(DashboardWidgetScatterplotDefinitionRequestArgs.builder()\n .x(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .y(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .build())\n .title(\"Widget Title\")\n .xaxis(DashboardWidgetScatterplotDefinitionXaxisArgs.builder()\n .includeZero(true)\n .label(\"x\")\n .max(\"2000\")\n .min(\"1\")\n .scale(\"pow\")\n .build())\n .yaxis(DashboardWidgetScatterplotDefinitionYaxisArgs.builder()\n .includeZero(false)\n .label(\"y\")\n .max(\"2222\")\n .min(\"5\")\n .scale(\"log\")\n .build())\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .servicemapDefinition(DashboardWidgetServicemapDefinitionArgs.builder()\n .filters( \n \"env:prod\",\n \"datacenter:dc1\")\n .service(\"master-db\")\n .title(\"env: prod, datacenter:dc1, service: master-db\")\n .titleAlign(\"left\")\n .titleSize(\"16\")\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .timeseriesDefinition(DashboardWidgetTimeseriesDefinitionArgs.builder()\n .event( \n %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference),\n %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .legendSize(\"2\")\n .liveSpan(\"1h\")\n .marker( \n %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference),\n %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .request( \n %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference),\n %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference),\n %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference),\n %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .showLegend(true)\n .title(\"Widget Title\")\n .yaxis(DashboardWidgetTimeseriesDefinitionYaxisArgs.builder()\n .includeZero(false)\n .max(100)\n .scale(\"log\")\n .build())\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .toplistDefinition(DashboardWidgetToplistDefinitionArgs.builder()\n .request(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .title(\"Widget Title\")\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .groupDefinition(DashboardWidgetGroupDefinitionArgs.builder()\n .layoutType(\"ordered\")\n .title(\"Group Widget\")\n .widget( \n %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference),\n %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .serviceLevelObjectiveDefinition(DashboardWidgetServiceLevelObjectiveDefinitionArgs.builder()\n .showErrorBudget(true)\n .sloId(\"56789\")\n .timeWindows( \n \"7d\",\n \"previous_week\")\n .title(\"Widget Title\")\n .viewMode(\"overall\")\n .viewType(\"detail\")\n .build())\n .build())\n .build());\n\n var freeDashboard = new Dashboard(\"freeDashboard\", DashboardArgs.builder() \n .description(\"Created using the Datadog provider in Terraform\")\n .isReadOnly(false)\n .layoutType(\"free\")\n .templateVariables( \n DashboardTemplateVariableArgs.builder()\n .default_(\"aws\")\n .name(\"var_1\")\n .prefix(\"host\")\n .build(),\n DashboardTemplateVariableArgs.builder()\n .default_(\"autoscaling\")\n .name(\"var_2\")\n .prefix(\"service_name\")\n .build())\n .templateVariablePresets(DashboardTemplateVariablePresetArgs.builder()\n .name(\"preset_1\")\n .templateVariables( \n DashboardTemplateVariablePresetTemplateVariableArgs.builder()\n .name(\"var_1\")\n .value(\"host.dc\")\n .build(),\n DashboardTemplateVariablePresetTemplateVariableArgs.builder()\n .name(\"var_2\")\n .value(\"my_service\")\n .build())\n .build())\n .title(\"Free Layout Dashboard\")\n .widgets( \n DashboardWidgetArgs.builder()\n .eventStreamDefinition(DashboardWidgetEventStreamDefinitionArgs.builder()\n .eventSize(\"l\")\n .liveSpan(\"1h\")\n .query(\"*\")\n .title(\"Widget Title\")\n .titleAlign(\"left\")\n .titleSize(16)\n .build())\n .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n .height(43)\n .width(32)\n .x(0)\n .y(0)\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .eventTimelineDefinition(DashboardWidgetEventTimelineDefinitionArgs.builder()\n .liveSpan(\"1h\")\n .query(\"*\")\n .title(\"Widget Title\")\n .titleAlign(\"left\")\n .titleSize(16)\n .build())\n .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n .height(9)\n .width(66)\n .x(33)\n .y(60)\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .freeTextDefinition(DashboardWidgetFreeTextDefinitionArgs.builder()\n .color(\"#d00\")\n .fontSize(\"36\")\n .text(\"free text content\")\n .textAlign(\"left\")\n .build())\n .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n .height(20)\n .width(34)\n .x(33)\n .y(0)\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .iframeDefinition(DashboardWidgetIframeDefinitionArgs.builder()\n .url(\"http://google.com\")\n .build())\n .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n .height(46)\n .width(39)\n .x(101)\n .y(0)\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .imageDefinition(DashboardWidgetImageDefinitionArgs.builder()\n .margin(\"small\")\n .sizing(\"fit\")\n .url(\"https://images.pexels.com/photos/67636/rose-blue-flower-rose-blooms-67636.jpeg?auto=compress\u0026cs=tinysrgb\u0026h=350\")\n .build())\n .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n .height(20)\n .width(30)\n .x(69)\n .y(0)\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .logStreamDefinition(DashboardWidgetLogStreamDefinitionArgs.builder()\n .columns( \n \"core_host\",\n \"core_service\",\n \"tag_source\")\n .indexes(\"main\")\n .messageDisplay(\"expanded-md\")\n .query(\"error\")\n .showDateColumn(true)\n .showMessageColumn(true)\n .sort(DashboardWidgetLogStreamDefinitionSortArgs.builder()\n .column(\"time\")\n .order(\"desc\")\n .build())\n .build())\n .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n .height(36)\n .width(32)\n .x(0)\n .y(45)\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .manageStatusDefinition(DashboardWidgetManageStatusDefinitionArgs.builder()\n .colorPreference(\"text\")\n .displayFormat(\"countsAndList\")\n .hideZeroCounts(true)\n .query(\"type:metric\")\n .showLastTriggered(false)\n .sort(\"status,asc\")\n .summaryType(\"monitors\")\n .title(\"Widget Title\")\n .titleAlign(\"left\")\n .titleSize(16)\n .build())\n .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n .height(40)\n .width(30)\n .x(101)\n .y(48)\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .traceServiceDefinition(DashboardWidgetTraceServiceDefinitionArgs.builder()\n .displayFormat(\"three_column\")\n .env(\"datadog.com\")\n .liveSpan(\"1h\")\n .service(\"alerting-cassandra\")\n .showBreakdown(true)\n .showDistribution(true)\n .showErrors(true)\n .showHits(true)\n .showLatency(false)\n .showResourceList(false)\n .sizeFormat(\"large\")\n .spanName(\"cassandra.query\")\n .title(\"alerting-cassandra #env:datadog.com\")\n .titleAlign(\"center\")\n .titleSize(\"13\")\n .build())\n .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n .height(38)\n .width(66)\n .x(33)\n .y(21)\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .timeseriesDefinition(DashboardWidgetTimeseriesDefinitionArgs.builder()\n .request(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .build())\n .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n .height(16)\n .width(25)\n .x(58)\n .y(83)\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .timeseriesDefinition(DashboardWidgetTimeseriesDefinitionArgs.builder()\n .request( \n %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference),\n %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .build())\n .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n .height(16)\n .width(28)\n .x(29)\n .y(83)\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .timeseriesDefinition(DashboardWidgetTimeseriesDefinitionArgs.builder()\n .request(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .build())\n .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n .height(16)\n .width(28)\n .x(0)\n .y(83)\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Example Ordered Layout\n orderedDashboard:\n type: datadog:Dashboard\n properties:\n description: Created using the Datadog provider in Terraform\n isReadOnly: true\n layoutType: ordered\n templateVariables:\n - default: aws\n name: var_1\n prefix: host\n - default: autoscaling\n name: var_2\n prefix: service_name\n templateVariablePresets:\n - name: preset_1\n templateVariables:\n - name: var_1\n value: host.dc\n - name: var_2\n value: my_service\n title: Ordered Layout Dashboard\n widgets:\n - alertGraphDefinition:\n alertId: '895605'\n liveSpan: 1h\n title: Widget Title\n vizType: timeseries\n - alertValueDefinition:\n alertId: '895605'\n precision: 3\n textAlign: center\n title: Widget Title\n unit: b\n - alertValueDefinition:\n alertId: '895605'\n precision: 3\n textAlign: center\n title: Widget Title\n unit: b\n - changeDefinition:\n liveSpan: 1h\n request:\n - changeType: absolute\n compareTo: week_before\n increaseGood: true\n orderBy: name\n orderDir: desc\n q: avg:system.load.1{env:staging} by {account}\n showPresent: true\n title: Widget Title\n - distributionDefinition:\n liveSpan: 1h\n request:\n - q: avg:system.load.1{env:staging} by {account}\n style:\n palette: warm\n title: Widget Title\n - checkStatusDefinition:\n check: aws.ecs.agent_connected\n groupBy:\n - account\n - cluster\n grouping: cluster\n liveSpan: 1h\n tags:\n - account:demo\n - cluster:awseb-ruthebdog-env-8-dn3m6u3gvk\n title: Widget Title\n - heatmapDefinition:\n liveSpan: 1h\n request:\n - q: avg:system.load.1{env:staging} by {account}\n style:\n palette: warm\n title: Widget Title\n yaxis:\n includeZero: true\n max: 2\n min: 1\n scale: sqrt\n - hostmapDefinition:\n group:\n - host\n - region\n noGroupHosts: true\n noMetricHosts: true\n nodeType: container\n request:\n fill:\n - q: avg:system.load.1{*} by {host}\n size:\n - q: avg:memcache.uptime{*} by {host}\n scope:\n - region:us-east-1\n - aws_account:727006795293\n style:\n fillMax: '20'\n fillMin: '10'\n palette: yellow_to_green\n paletteFlip: true\n title: Widget Title\n - noteDefinition:\n backgroundColor: pink\n content: note text\n fontSize: '14'\n showTick: true\n textAlign: center\n tickEdge: left\n tickPos: 50%\n - queryValueDefinition:\n autoscale: true\n customUnit: xx\n liveSpan: 1h\n precision: '4'\n request:\n - aggregator: sum\n conditionalFormats:\n - comparator: \u003c\n palette: white_on_green\n value: '2'\n - comparator: '\u003e'\n palette: white_on_red\n value: '2.2'\n q: avg:system.load.1{env:staging} by {account}\n textAlign: right\n title: Widget Title\n - queryTableDefinition:\n liveSpan: 1h\n request:\n - aggregator: sum\n conditionalFormats:\n - comparator: \u003c\n palette: white_on_green\n value: '2'\n - comparator: '\u003e'\n palette: white_on_red\n value: '2.2'\n limit: '10'\n q: avg:system.load.1{env:staging} by {account}\n title: Widget Title\n - scatterplotDefinition:\n colorByGroups:\n - account\n - apm-role-group\n liveSpan: 1h\n request:\n x:\n - aggregator: max\n q: avg:system.cpu.user{*} by {service, account}\n y:\n - aggregator: min\n q: avg:system.mem.used{*} by {service, account}\n title: Widget Title\n xaxis:\n includeZero: true\n label: x\n max: '2000'\n min: '1'\n scale: pow\n yaxis:\n includeZero: false\n label: y\n max: '2222'\n min: '5'\n scale: log\n - servicemapDefinition:\n filters:\n - env:prod\n - datacenter:dc1\n service: master-db\n title: 'env: prod, datacenter:dc1, service: master-db'\n titleAlign: left\n titleSize: '16'\n - timeseriesDefinition:\n event:\n - q: sources:test tags:1\n - q: sources:test tags:2\n legendSize: '2'\n liveSpan: 1h\n marker:\n - displayType: error dashed\n label: ' z=6 '\n value: y = 4\n - displayType: ok solid\n label: ' x=8 '\n value: 10 \u003c y \u003c 999\n request:\n - displayType: line\n metadata:\n - aliasName: Alpha\n expression: avg:system.cpu.user{app:general} by {env}\n q: avg:system.cpu.user{app:general} by {env}\n style:\n lineType: dashed\n lineWidth: thin\n palette: warm\n - displayType: area\n logQuery:\n computeQuery:\n aggregation: avg\n facet: '@duration'\n interval: 5000\n groupBy:\n - facet: host\n limit: 10\n sortQuery:\n aggregation: avg\n facet: '@duration'\n order: desc\n index: mcnulty\n searchQuery: status:info\n - apmQuery:\n computeQuery:\n aggregation: avg\n facet: '@duration'\n interval: 5000\n groupBy:\n - facet: resource_name\n limit: 50\n sortQuery:\n aggregation: avg\n facet: '@string_query.interval'\n order: desc\n index: apm-search\n searchQuery: type:web\n displayType: bars\n - displayType: area\n processQuery:\n filterBy:\n - active\n limit: 50\n metric: process.stat.cpu.total_pct\n searchBy: error\n showLegend: true\n title: Widget Title\n yaxis:\n includeZero: false\n max: 100\n scale: log\n - toplistDefinition:\n request:\n - conditionalFormats:\n - comparator: \u003c\n palette: white_on_green\n value: '2'\n - comparator: '\u003e'\n palette: white_on_red\n value: '2.2'\n q: avg:system.cpu.user{app:general} by {env}\n title: Widget Title\n - groupDefinition:\n layoutType: ordered\n title: Group Widget\n widget:\n - noteDefinition:\n backgroundColor: pink\n content: cluster note widget\n fontSize: '14'\n showTick: true\n textAlign: center\n tickEdge: left\n tickPos: 50%\n - alertGraphDefinition:\n alertId: '123'\n liveSpan: 1h\n title: Alert Graph\n vizType: toplist\n - serviceLevelObjectiveDefinition:\n showErrorBudget: true\n sloId: '56789'\n timeWindows:\n - 7d\n - previous_week\n title: Widget Title\n viewMode: overall\n viewType: detail\n # Example Free Layout\n freeDashboard:\n type: datadog:Dashboard\n properties:\n description: Created using the Datadog provider in Terraform\n isReadOnly: false\n layoutType: free\n templateVariables:\n - default: aws\n name: var_1\n prefix: host\n - default: autoscaling\n name: var_2\n prefix: service_name\n templateVariablePresets:\n - name: preset_1\n templateVariables:\n - name: var_1\n value: host.dc\n - name: var_2\n value: my_service\n title: Free Layout Dashboard\n widgets:\n - eventStreamDefinition:\n eventSize: l\n liveSpan: 1h\n query: '*'\n title: Widget Title\n titleAlign: left\n titleSize: 16\n widgetLayout:\n height: 43\n width: 32\n x: 0\n y: 0\n - eventTimelineDefinition:\n liveSpan: 1h\n query: '*'\n title: Widget Title\n titleAlign: left\n titleSize: 16\n widgetLayout:\n height: 9\n width: 66\n x: 33\n y: 60\n - freeTextDefinition:\n color: '#d00'\n fontSize: '36'\n text: free text content\n textAlign: left\n widgetLayout:\n height: 20\n width: 34\n x: 33\n y: 0\n - iframeDefinition:\n url: http://google.com\n widgetLayout:\n height: 46\n width: 39\n x: 101\n y: 0\n - imageDefinition:\n margin: small\n sizing: fit\n url: https://images.pexels.com/photos/67636/rose-blue-flower-rose-blooms-67636.jpeg?auto=compress\u0026cs=tinysrgb\u0026h=350\n widgetLayout:\n height: 20\n width: 30\n x: 69\n y: 0\n - logStreamDefinition:\n columns:\n - core_host\n - core_service\n - tag_source\n indexes:\n - main\n messageDisplay: expanded-md\n query: error\n showDateColumn: true\n showMessageColumn: true\n sort:\n column: time\n order: desc\n widgetLayout:\n height: 36\n width: 32\n x: 0\n y: 45\n - manageStatusDefinition:\n colorPreference: text\n displayFormat: countsAndList\n hideZeroCounts: true\n query: type:metric\n showLastTriggered: false\n sort: status,asc\n summaryType: monitors\n title: Widget Title\n titleAlign: left\n titleSize: 16\n widgetLayout:\n height: 40\n width: 30\n x: 101\n y: 48\n - traceServiceDefinition:\n displayFormat: three_column\n env: datadog.com\n liveSpan: 1h\n service: alerting-cassandra\n showBreakdown: true\n showDistribution: true\n showErrors: true\n showHits: true\n showLatency: false\n showResourceList: false\n sizeFormat: large\n spanName: cassandra.query\n title: 'alerting-cassandra #env:datadog.com'\n titleAlign: center\n titleSize: '13'\n widgetLayout:\n height: 38\n width: 66\n x: 33\n y: 21\n - timeseriesDefinition:\n request:\n - formula:\n - alias: my ff query\n formulaExpression: my_query_1 + my_query_2\n - alias: my second ff query\n formulaExpression: my_query_1 * my_query_2\n limit:\n count: 5\n order: desc\n query:\n - metricQuery:\n aggregator: sum\n dataSource: metrics\n name: my_query_1\n query: avg:system.cpu.user{app:general} by {env}\n - metricQuery:\n aggregator: sum\n name: my_query_2\n query: avg:system.cpu.user{app:general} by {env}\n widgetLayout:\n height: 16\n width: 25\n x: 58\n y: 83\n - timeseriesDefinition:\n request:\n - query:\n - eventQuery:\n compute:\n - aggregation: count\n dataSource: logs\n groupBy:\n - facet: host\n limit: 10\n sort:\n aggregation: avg\n metric: '@lambda.max_memory_used'\n indexes:\n - days-3\n name: my-query\n - displayType: overlay\n query:\n - metricQuery:\n dataSource: metrics\n name: MyOverlay\n query: avg:system.cpu.user{host:COMP-QJWVM2FYT4}\n widgetLayout:\n height: 16\n width: 28\n x: 29\n y: 83\n - timeseriesDefinition:\n request:\n - query:\n - processQuery:\n aggregator: sum\n dataSource: process\n isNormalizedCpu: true\n limit: 10\n metric: process.stat.cpu.total_pct\n name: my_process_query\n sort: asc\n tagFilters:\n - some_filter\n textFilter: abc\n widgetLayout:\n height: 16\n width: 28\n x: 0\n y: 83\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\n\n\n```sh\n $ pulumi import datadog:index/dashboard:Dashboard my_service_dashboard sv7-gyh-kas\n```\n\n ", + "description": "Provides a Datadog dashboard resource. This can be used to create and manage Datadog dashboards.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.Dashboard;\nimport com.pulumi.datadog.DashboardArgs;\nimport com.pulumi.datadog.inputs.DashboardTemplateVariableArgs;\nimport com.pulumi.datadog.inputs.DashboardTemplateVariablePresetArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetAlertGraphDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetAlertValueDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetChangeDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetDistributionDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetCheckStatusDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetHeatmapDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetHeatmapDefinitionYaxisArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetHostmapDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetHostmapDefinitionRequestArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetHostmapDefinitionStyleArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetNoteDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetQueryValueDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetQueryTableDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetScatterplotDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetScatterplotDefinitionRequestArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetScatterplotDefinitionXaxisArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetScatterplotDefinitionYaxisArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetServicemapDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetTimeseriesDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetTimeseriesDefinitionYaxisArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetToplistDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetGroupDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetServiceLevelObjectiveDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetEventStreamDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetWidgetLayoutArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetEventTimelineDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetFreeTextDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetIframeDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetImageDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetLogStreamDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetLogStreamDefinitionSortArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetManageStatusDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetTraceServiceDefinitionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var orderedDashboard = new Dashboard(\"orderedDashboard\", DashboardArgs.builder() \n .description(\"Created using the Datadog provider in Pulumi\")\n .isReadOnly(true)\n .layoutType(\"ordered\")\n .templateVariables( \n DashboardTemplateVariableArgs.builder()\n .default_(\"aws\")\n .name(\"var_1\")\n .prefix(\"host\")\n .build(),\n DashboardTemplateVariableArgs.builder()\n .default_(\"autoscaling\")\n .name(\"var_2\")\n .prefix(\"service_name\")\n .build())\n .templateVariablePresets(DashboardTemplateVariablePresetArgs.builder()\n .name(\"preset_1\")\n .templateVariables( \n DashboardTemplateVariablePresetTemplateVariableArgs.builder()\n .name(\"var_1\")\n .value(\"host.dc\")\n .build(),\n DashboardTemplateVariablePresetTemplateVariableArgs.builder()\n .name(\"var_2\")\n .value(\"my_service\")\n .build())\n .build())\n .title(\"Ordered Layout Dashboard\")\n .widgets( \n DashboardWidgetArgs.builder()\n .alertGraphDefinition(DashboardWidgetAlertGraphDefinitionArgs.builder()\n .alertId(\"895605\")\n .liveSpan(\"1h\")\n .title(\"Widget Title\")\n .vizType(\"timeseries\")\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .alertValueDefinition(DashboardWidgetAlertValueDefinitionArgs.builder()\n .alertId(\"895605\")\n .precision(3)\n .textAlign(\"center\")\n .title(\"Widget Title\")\n .unit(\"b\")\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .alertValueDefinition(DashboardWidgetAlertValueDefinitionArgs.builder()\n .alertId(\"895605\")\n .precision(3)\n .textAlign(\"center\")\n .title(\"Widget Title\")\n .unit(\"b\")\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .changeDefinition(DashboardWidgetChangeDefinitionArgs.builder()\n .liveSpan(\"1h\")\n .request(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .title(\"Widget Title\")\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .distributionDefinition(DashboardWidgetDistributionDefinitionArgs.builder()\n .liveSpan(\"1h\")\n .request(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .title(\"Widget Title\")\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .checkStatusDefinition(DashboardWidgetCheckStatusDefinitionArgs.builder()\n .check(\"aws.ecs.agent_connected\")\n .groupBy( \n \"account\",\n \"cluster\")\n .grouping(\"cluster\")\n .liveSpan(\"1h\")\n .tags( \n \"account:demo\",\n \"cluster:awseb-ruthebdog-env-8-dn3m6u3gvk\")\n .title(\"Widget Title\")\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .heatmapDefinition(DashboardWidgetHeatmapDefinitionArgs.builder()\n .liveSpan(\"1h\")\n .request(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .title(\"Widget Title\")\n .yaxis(DashboardWidgetHeatmapDefinitionYaxisArgs.builder()\n .includeZero(true)\n .max(2)\n .min(1)\n .scale(\"sqrt\")\n .build())\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .hostmapDefinition(DashboardWidgetHostmapDefinitionArgs.builder()\n .group( \n \"host\",\n \"region\")\n .noGroupHosts(true)\n .noMetricHosts(true)\n .nodeType(\"container\")\n .request(DashboardWidgetHostmapDefinitionRequestArgs.builder()\n .fill(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .size(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .build())\n .scope( \n \"region:us-east-1\",\n \"aws_account:727006795293\")\n .style(DashboardWidgetHostmapDefinitionStyleArgs.builder()\n .fillMax(\"20\")\n .fillMin(\"10\")\n .palette(\"yellow_to_green\")\n .paletteFlip(true)\n .build())\n .title(\"Widget Title\")\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .noteDefinition(DashboardWidgetNoteDefinitionArgs.builder()\n .backgroundColor(\"pink\")\n .content(\"note text\")\n .fontSize(\"14\")\n .showTick(true)\n .textAlign(\"center\")\n .tickEdge(\"left\")\n .tickPos(\"50%\")\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .queryValueDefinition(DashboardWidgetQueryValueDefinitionArgs.builder()\n .autoscale(true)\n .customUnit(\"xx\")\n .liveSpan(\"1h\")\n .precision(\"4\")\n .request(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .textAlign(\"right\")\n .title(\"Widget Title\")\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .queryTableDefinition(DashboardWidgetQueryTableDefinitionArgs.builder()\n .liveSpan(\"1h\")\n .request(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .title(\"Widget Title\")\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .scatterplotDefinition(DashboardWidgetScatterplotDefinitionArgs.builder()\n .colorByGroups( \n \"account\",\n \"apm-role-group\")\n .liveSpan(\"1h\")\n .request(DashboardWidgetScatterplotDefinitionRequestArgs.builder()\n .x(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .y(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .build())\n .title(\"Widget Title\")\n .xaxis(DashboardWidgetScatterplotDefinitionXaxisArgs.builder()\n .includeZero(true)\n .label(\"x\")\n .max(\"2000\")\n .min(\"1\")\n .scale(\"pow\")\n .build())\n .yaxis(DashboardWidgetScatterplotDefinitionYaxisArgs.builder()\n .includeZero(false)\n .label(\"y\")\n .max(\"2222\")\n .min(\"5\")\n .scale(\"log\")\n .build())\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .servicemapDefinition(DashboardWidgetServicemapDefinitionArgs.builder()\n .filters( \n \"env:prod\",\n \"datacenter:dc1\")\n .service(\"master-db\")\n .title(\"env: prod, datacenter:dc1, service: master-db\")\n .titleAlign(\"left\")\n .titleSize(\"16\")\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .timeseriesDefinition(DashboardWidgetTimeseriesDefinitionArgs.builder()\n .event( \n %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference),\n %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .legendSize(\"2\")\n .liveSpan(\"1h\")\n .marker( \n %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference),\n %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .request( \n %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference),\n %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference),\n %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference),\n %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .showLegend(true)\n .title(\"Widget Title\")\n .yaxis(DashboardWidgetTimeseriesDefinitionYaxisArgs.builder()\n .includeZero(false)\n .max(100)\n .scale(\"log\")\n .build())\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .toplistDefinition(DashboardWidgetToplistDefinitionArgs.builder()\n .request(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .title(\"Widget Title\")\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .groupDefinition(DashboardWidgetGroupDefinitionArgs.builder()\n .layoutType(\"ordered\")\n .title(\"Group Widget\")\n .widget( \n %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference),\n %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .serviceLevelObjectiveDefinition(DashboardWidgetServiceLevelObjectiveDefinitionArgs.builder()\n .showErrorBudget(true)\n .sloId(\"56789\")\n .timeWindows( \n \"7d\",\n \"previous_week\")\n .title(\"Widget Title\")\n .viewMode(\"overall\")\n .viewType(\"detail\")\n .build())\n .build())\n .build());\n\n var freeDashboard = new Dashboard(\"freeDashboard\", DashboardArgs.builder() \n .description(\"Created using the Datadog provider in Pulumi\")\n .isReadOnly(false)\n .layoutType(\"free\")\n .templateVariables( \n DashboardTemplateVariableArgs.builder()\n .default_(\"aws\")\n .name(\"var_1\")\n .prefix(\"host\")\n .build(),\n DashboardTemplateVariableArgs.builder()\n .default_(\"autoscaling\")\n .name(\"var_2\")\n .prefix(\"service_name\")\n .build())\n .templateVariablePresets(DashboardTemplateVariablePresetArgs.builder()\n .name(\"preset_1\")\n .templateVariables( \n DashboardTemplateVariablePresetTemplateVariableArgs.builder()\n .name(\"var_1\")\n .value(\"host.dc\")\n .build(),\n DashboardTemplateVariablePresetTemplateVariableArgs.builder()\n .name(\"var_2\")\n .value(\"my_service\")\n .build())\n .build())\n .title(\"Free Layout Dashboard\")\n .widgets( \n DashboardWidgetArgs.builder()\n .eventStreamDefinition(DashboardWidgetEventStreamDefinitionArgs.builder()\n .eventSize(\"l\")\n .liveSpan(\"1h\")\n .query(\"*\")\n .title(\"Widget Title\")\n .titleAlign(\"left\")\n .titleSize(16)\n .build())\n .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n .height(43)\n .width(32)\n .x(0)\n .y(0)\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .eventTimelineDefinition(DashboardWidgetEventTimelineDefinitionArgs.builder()\n .liveSpan(\"1h\")\n .query(\"*\")\n .title(\"Widget Title\")\n .titleAlign(\"left\")\n .titleSize(16)\n .build())\n .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n .height(9)\n .width(66)\n .x(33)\n .y(60)\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .freeTextDefinition(DashboardWidgetFreeTextDefinitionArgs.builder()\n .color(\"#d00\")\n .fontSize(\"36\")\n .text(\"free text content\")\n .textAlign(\"left\")\n .build())\n .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n .height(20)\n .width(34)\n .x(33)\n .y(0)\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .iframeDefinition(DashboardWidgetIframeDefinitionArgs.builder()\n .url(\"http://google.com\")\n .build())\n .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n .height(46)\n .width(39)\n .x(101)\n .y(0)\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .imageDefinition(DashboardWidgetImageDefinitionArgs.builder()\n .margin(\"small\")\n .sizing(\"fit\")\n .url(\"https://images.pexels.com/photos/67636/rose-blue-flower-rose-blooms-67636.jpeg?auto=compress\u0026cs=tinysrgb\u0026h=350\")\n .build())\n .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n .height(20)\n .width(30)\n .x(69)\n .y(0)\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .logStreamDefinition(DashboardWidgetLogStreamDefinitionArgs.builder()\n .columns( \n \"core_host\",\n \"core_service\",\n \"tag_source\")\n .indexes(\"main\")\n .messageDisplay(\"expanded-md\")\n .query(\"error\")\n .showDateColumn(true)\n .showMessageColumn(true)\n .sort(DashboardWidgetLogStreamDefinitionSortArgs.builder()\n .column(\"time\")\n .order(\"desc\")\n .build())\n .build())\n .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n .height(36)\n .width(32)\n .x(0)\n .y(45)\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .manageStatusDefinition(DashboardWidgetManageStatusDefinitionArgs.builder()\n .colorPreference(\"text\")\n .displayFormat(\"countsAndList\")\n .hideZeroCounts(true)\n .query(\"type:metric\")\n .showLastTriggered(false)\n .sort(\"status,asc\")\n .summaryType(\"monitors\")\n .title(\"Widget Title\")\n .titleAlign(\"left\")\n .titleSize(16)\n .build())\n .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n .height(40)\n .width(30)\n .x(101)\n .y(48)\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .traceServiceDefinition(DashboardWidgetTraceServiceDefinitionArgs.builder()\n .displayFormat(\"three_column\")\n .env(\"datadog.com\")\n .liveSpan(\"1h\")\n .service(\"alerting-cassandra\")\n .showBreakdown(true)\n .showDistribution(true)\n .showErrors(true)\n .showHits(true)\n .showLatency(false)\n .showResourceList(false)\n .sizeFormat(\"large\")\n .spanName(\"cassandra.query\")\n .title(\"alerting-cassandra #env:datadog.com\")\n .titleAlign(\"center\")\n .titleSize(\"13\")\n .build())\n .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n .height(38)\n .width(66)\n .x(33)\n .y(21)\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .timeseriesDefinition(DashboardWidgetTimeseriesDefinitionArgs.builder()\n .request(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .build())\n .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n .height(16)\n .width(25)\n .x(58)\n .y(83)\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .timeseriesDefinition(DashboardWidgetTimeseriesDefinitionArgs.builder()\n .request( \n %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference),\n %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .build())\n .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n .height(16)\n .width(28)\n .x(29)\n .y(83)\n .build())\n .build(),\n DashboardWidgetArgs.builder()\n .timeseriesDefinition(DashboardWidgetTimeseriesDefinitionArgs.builder()\n .request(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .build())\n .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n .height(16)\n .width(28)\n .x(0)\n .y(83)\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Example Ordered Layout\n orderedDashboard:\n type: datadog:Dashboard\n properties:\n description: Created using the Datadog provider in Pulumi\n isReadOnly: true\n layoutType: ordered\n templateVariables:\n - default: aws\n name: var_1\n prefix: host\n - default: autoscaling\n name: var_2\n prefix: service_name\n templateVariablePresets:\n - name: preset_1\n templateVariables:\n - name: var_1\n value: host.dc\n - name: var_2\n value: my_service\n title: Ordered Layout Dashboard\n widgets:\n - alertGraphDefinition:\n alertId: '895605'\n liveSpan: 1h\n title: Widget Title\n vizType: timeseries\n - alertValueDefinition:\n alertId: '895605'\n precision: 3\n textAlign: center\n title: Widget Title\n unit: b\n - alertValueDefinition:\n alertId: '895605'\n precision: 3\n textAlign: center\n title: Widget Title\n unit: b\n - changeDefinition:\n liveSpan: 1h\n request:\n - changeType: absolute\n compareTo: week_before\n increaseGood: true\n orderBy: name\n orderDir: desc\n q: avg:system.load.1{env:staging} by {account}\n showPresent: true\n title: Widget Title\n - distributionDefinition:\n liveSpan: 1h\n request:\n - q: avg:system.load.1{env:staging} by {account}\n style:\n palette: warm\n title: Widget Title\n - checkStatusDefinition:\n check: aws.ecs.agent_connected\n groupBy:\n - account\n - cluster\n grouping: cluster\n liveSpan: 1h\n tags:\n - account:demo\n - cluster:awseb-ruthebdog-env-8-dn3m6u3gvk\n title: Widget Title\n - heatmapDefinition:\n liveSpan: 1h\n request:\n - q: avg:system.load.1{env:staging} by {account}\n style:\n palette: warm\n title: Widget Title\n yaxis:\n includeZero: true\n max: 2\n min: 1\n scale: sqrt\n - hostmapDefinition:\n group:\n - host\n - region\n noGroupHosts: true\n noMetricHosts: true\n nodeType: container\n request:\n fill:\n - q: avg:system.load.1{*} by {host}\n size:\n - q: avg:memcache.uptime{*} by {host}\n scope:\n - region:us-east-1\n - aws_account:727006795293\n style:\n fillMax: '20'\n fillMin: '10'\n palette: yellow_to_green\n paletteFlip: true\n title: Widget Title\n - noteDefinition:\n backgroundColor: pink\n content: note text\n fontSize: '14'\n showTick: true\n textAlign: center\n tickEdge: left\n tickPos: 50%\n - queryValueDefinition:\n autoscale: true\n customUnit: xx\n liveSpan: 1h\n precision: '4'\n request:\n - aggregator: sum\n conditionalFormats:\n - comparator: \u003c\n palette: white_on_green\n value: '2'\n - comparator: '\u003e'\n palette: white_on_red\n value: '2.2'\n q: avg:system.load.1{env:staging} by {account}\n textAlign: right\n title: Widget Title\n - queryTableDefinition:\n liveSpan: 1h\n request:\n - aggregator: sum\n conditionalFormats:\n - comparator: \u003c\n palette: white_on_green\n value: '2'\n - comparator: '\u003e'\n palette: white_on_red\n value: '2.2'\n limit: '10'\n q: avg:system.load.1{env:staging} by {account}\n title: Widget Title\n - scatterplotDefinition:\n colorByGroups:\n - account\n - apm-role-group\n liveSpan: 1h\n request:\n x:\n - aggregator: max\n q: avg:system.cpu.user{*} by {service, account}\n y:\n - aggregator: min\n q: avg:system.mem.used{*} by {service, account}\n title: Widget Title\n xaxis:\n includeZero: true\n label: x\n max: '2000'\n min: '1'\n scale: pow\n yaxis:\n includeZero: false\n label: y\n max: '2222'\n min: '5'\n scale: log\n - servicemapDefinition:\n filters:\n - env:prod\n - datacenter:dc1\n service: master-db\n title: 'env: prod, datacenter:dc1, service: master-db'\n titleAlign: left\n titleSize: '16'\n - timeseriesDefinition:\n event:\n - q: sources:test tags:1\n - q: sources:test tags:2\n legendSize: '2'\n liveSpan: 1h\n marker:\n - displayType: error dashed\n label: ' z=6 '\n value: y = 4\n - displayType: ok solid\n label: ' x=8 '\n value: 10 \u003c y \u003c 999\n request:\n - displayType: line\n metadata:\n - aliasName: Alpha\n expression: avg:system.cpu.user{app:general} by {env}\n q: avg:system.cpu.user{app:general} by {env}\n style:\n lineType: dashed\n lineWidth: thin\n palette: warm\n - displayType: area\n logQuery:\n computeQuery:\n aggregation: avg\n facet: '@duration'\n interval: 5000\n groupBy:\n - facet: host\n limit: 10\n sortQuery:\n aggregation: avg\n facet: '@duration'\n order: desc\n index: mcnulty\n searchQuery: status:info\n - apmQuery:\n computeQuery:\n aggregation: avg\n facet: '@duration'\n interval: 5000\n groupBy:\n - facet: resource_name\n limit: 50\n sortQuery:\n aggregation: avg\n facet: '@string_query.interval'\n order: desc\n index: apm-search\n searchQuery: type:web\n displayType: bars\n - displayType: area\n processQuery:\n filterBy:\n - active\n limit: 50\n metric: process.stat.cpu.total_pct\n searchBy: error\n showLegend: true\n title: Widget Title\n yaxis:\n includeZero: false\n max: 100\n scale: log\n - toplistDefinition:\n request:\n - conditionalFormats:\n - comparator: \u003c\n palette: white_on_green\n value: '2'\n - comparator: '\u003e'\n palette: white_on_red\n value: '2.2'\n q: avg:system.cpu.user{app:general} by {env}\n title: Widget Title\n - groupDefinition:\n layoutType: ordered\n title: Group Widget\n widget:\n - noteDefinition:\n backgroundColor: pink\n content: cluster note widget\n fontSize: '14'\n showTick: true\n textAlign: center\n tickEdge: left\n tickPos: 50%\n - alertGraphDefinition:\n alertId: '123'\n liveSpan: 1h\n title: Alert Graph\n vizType: toplist\n - serviceLevelObjectiveDefinition:\n showErrorBudget: true\n sloId: '56789'\n timeWindows:\n - 7d\n - previous_week\n title: Widget Title\n viewMode: overall\n viewType: detail\n # Example Free Layout\n freeDashboard:\n type: datadog:Dashboard\n properties:\n description: Created using the Datadog provider in Pulumi\n isReadOnly: false\n layoutType: free\n templateVariables:\n - default: aws\n name: var_1\n prefix: host\n - default: autoscaling\n name: var_2\n prefix: service_name\n templateVariablePresets:\n - name: preset_1\n templateVariables:\n - name: var_1\n value: host.dc\n - name: var_2\n value: my_service\n title: Free Layout Dashboard\n widgets:\n - eventStreamDefinition:\n eventSize: l\n liveSpan: 1h\n query: '*'\n title: Widget Title\n titleAlign: left\n titleSize: 16\n widgetLayout:\n height: 43\n width: 32\n x: 0\n y: 0\n - eventTimelineDefinition:\n liveSpan: 1h\n query: '*'\n title: Widget Title\n titleAlign: left\n titleSize: 16\n widgetLayout:\n height: 9\n width: 66\n x: 33\n y: 60\n - freeTextDefinition:\n color: '#d00'\n fontSize: '36'\n text: free text content\n textAlign: left\n widgetLayout:\n height: 20\n width: 34\n x: 33\n y: 0\n - iframeDefinition:\n url: http://google.com\n widgetLayout:\n height: 46\n width: 39\n x: 101\n y: 0\n - imageDefinition:\n margin: small\n sizing: fit\n url: https://images.pexels.com/photos/67636/rose-blue-flower-rose-blooms-67636.jpeg?auto=compress\u0026cs=tinysrgb\u0026h=350\n widgetLayout:\n height: 20\n width: 30\n x: 69\n y: 0\n - logStreamDefinition:\n columns:\n - core_host\n - core_service\n - tag_source\n indexes:\n - main\n messageDisplay: expanded-md\n query: error\n showDateColumn: true\n showMessageColumn: true\n sort:\n column: time\n order: desc\n widgetLayout:\n height: 36\n width: 32\n x: 0\n y: 45\n - manageStatusDefinition:\n colorPreference: text\n displayFormat: countsAndList\n hideZeroCounts: true\n query: type:metric\n showLastTriggered: false\n sort: status,asc\n summaryType: monitors\n title: Widget Title\n titleAlign: left\n titleSize: 16\n widgetLayout:\n height: 40\n width: 30\n x: 101\n y: 48\n - traceServiceDefinition:\n displayFormat: three_column\n env: datadog.com\n liveSpan: 1h\n service: alerting-cassandra\n showBreakdown: true\n showDistribution: true\n showErrors: true\n showHits: true\n showLatency: false\n showResourceList: false\n sizeFormat: large\n spanName: cassandra.query\n title: 'alerting-cassandra #env:datadog.com'\n titleAlign: center\n titleSize: '13'\n widgetLayout:\n height: 38\n width: 66\n x: 33\n y: 21\n - timeseriesDefinition:\n request:\n - formula:\n - alias: my ff query\n formulaExpression: my_query_1 + my_query_2\n - alias: my second ff query\n formulaExpression: my_query_1 * my_query_2\n limit:\n count: 5\n order: desc\n query:\n - metricQuery:\n aggregator: sum\n dataSource: metrics\n name: my_query_1\n query: avg:system.cpu.user{app:general} by {env}\n - metricQuery:\n aggregator: sum\n name: my_query_2\n query: avg:system.cpu.user{app:general} by {env}\n widgetLayout:\n height: 16\n width: 25\n x: 58\n y: 83\n - timeseriesDefinition:\n request:\n - query:\n - eventQuery:\n compute:\n - aggregation: count\n dataSource: logs\n groupBy:\n - facet: host\n limit: 10\n sort:\n aggregation: avg\n metric: '@lambda.max_memory_used'\n indexes:\n - days-3\n name: my-query\n - displayType: overlay\n query:\n - metricQuery:\n dataSource: metrics\n name: MyOverlay\n query: avg:system.cpu.user{host:COMP-QJWVM2FYT4}\n widgetLayout:\n height: 16\n width: 28\n x: 29\n y: 83\n - timeseriesDefinition:\n request:\n - query:\n - processQuery:\n aggregator: sum\n dataSource: process\n isNormalizedCpu: true\n limit: 10\n metric: process.stat.cpu.total_pct\n name: my_process_query\n sort: asc\n tagFilters:\n - some_filter\n textFilter: abc\n widgetLayout:\n height: 16\n width: 28\n x: 0\n y: 83\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\n\n\n```sh\n $ pulumi import datadog:index/dashboard:Dashboard my_service_dashboard sv7-gyh-kas\n```\n\n ", "properties": { "dashboardLists": { "type": "array", @@ -34884,7 +34884,7 @@ } }, "datadog:index/dashboardJson:DashboardJson": { - "description": "Provides a Datadog dashboard JSON resource. This can be used to create and manage Datadog dashboards using the JSON definition.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Example Dashboard JSON\nconst dashboardJson = new datadog.DashboardJson(\"dashboardJson\", {dashboard: `{\n \"title\":\"Ordered Layout Dashboard\",\n \"description\":\"Created using the Datadog provider in Terraform\",\n \"widgets\":[\n {\n \"id\":719369537777170,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"alert_graph\",\n \"alert_id\":\"895605\",\n \"viz_type\":\"timeseries\"\n }\n },\n {\n \"id\":2306240030393868,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"alert_value\",\n \"alert_id\":\"895605\",\n \"unit\":\"b\",\n \"text_align\":\"center\",\n \"precision\":3\n }\n },\n {\n \"id\":6990998850881326,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"alert_value\",\n \"alert_id\":\"895605\",\n \"unit\":\"b\",\n \"text_align\":\"center\",\n \"precision\":3\n }\n },\n {\n \"id\":3351284044659007,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"change\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"compare_to\":\"week_before\",\n \"change_type\":\"absolute\",\n \"order_dir\":\"desc\",\n \"increase_good\":true,\n \"order_by\":\"name\",\n \"show_present\":true\n }\n ]\n }\n },\n {\n \"id\":6450290622996182,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"show_legend\":false,\n \"type\":\"distribution\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"style\":{\n \"palette\":\"warm\"\n }\n }\n ]\n }\n },\n {\n \"id\":4902842646291536,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"check_status\",\n \"check\":\"aws.ecs.agent_connected\",\n \"grouping\":\"cluster\",\n \"group_by\":[\n \"account\",\n \"cluster\"\n ],\n \"tags\":[\n \"account:demo\",\n \"cluster:awseb-ruthebdog-env-8-dn3m6u3gvk\"\n ]\n }\n },\n {\n \"id\":6392349954822644,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"show_legend\":false,\n \"type\":\"heatmap\",\n \"yaxis\":{\n \"scale\":\"sqrt\",\n \"include_zero\":true,\n \"min\":\"1\",\n \"max\":\"2\"\n },\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"style\":{\n \"palette\":\"warm\"\n }\n }\n ]\n }\n },\n {\n \"id\":5222961478940988,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"hostmap\",\n \"requests\":{\n \"fill\":{\n \"q\":\"avg:system.load.1{*} by {host}\"\n },\n \"size\":{\n \"q\":\"avg:memcache.uptime{*} by {host}\"\n }\n },\n \"node_type\":\"container\",\n \"no_metric_hosts\":true,\n \"no_group_hosts\":true,\n \"group\":[\n \"host\",\n \"region\"\n ],\n \"scope\":[\n \"region:us-east-1\",\n \"aws_account:727006795293\"\n ],\n \"style\":{\n \"palette\":\"yellow_to_green\",\n \"palette_flip\":true,\n \"fill_min\":\"10\",\n \"fill_max\":\"20\"\n }\n }\n },\n {\n \"id\":8121199734227072,\n \"definition\":{\n \"type\":\"note\",\n \"content\":\"note text\",\n \"background_color\":\"pink\",\n \"font_size\":\"14\",\n \"text_align\":\"center\",\n \"show_tick\":true,\n \"tick_pos\":\"50%\",\n \"tick_edge\":\"left\"\n }\n },\n {\n \"id\":1775856835833038,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"query_value\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"aggregator\":\"sum\",\n \"conditional_formats\":[\n {\n \"hide_value\":false,\n \"comparator\":\"\u003c\",\n \"palette\":\"white_on_green\",\n \"value\":2\n },\n {\n \"hide_value\":false,\n \"comparator\":\"\u003e\",\n \"palette\":\"white_on_red\",\n \"value\":2.2\n }\n ]\n }\n ],\n \"autoscale\":true,\n \"custom_unit\":\"xx\",\n \"text_align\":\"right\",\n \"precision\":4\n }\n },\n {\n \"id\":8461455966625581,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"query_table\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"aggregator\":\"sum\",\n \"conditional_formats\":[\n {\n \"hide_value\":false,\n \"comparator\":\"\u003c\",\n \"palette\":\"white_on_green\",\n \"value\":2\n },\n {\n \"hide_value\":false,\n \"comparator\":\"\u003e\",\n \"palette\":\"white_on_red\",\n \"value\":2.2\n }\n ],\n \"limit\":10\n }\n ]\n }\n },\n {\n \"id\":8660006349418736,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"scatterplot\",\n \"requests\":{\n \"x\":{\n \"q\":\"avg:system.cpu.user{*} by {service, account}\",\n \"aggregator\":\"max\"\n },\n \"y\":{\n \"q\":\"avg:system.mem.used{*} by {service, account}\",\n \"aggregator\":\"min\"\n }\n },\n \"xaxis\":{\n \"scale\":\"pow\",\n \"label\":\"x\",\n \"include_zero\":true,\n \"min\":\"1\",\n \"max\":\"2000\"\n },\n \"yaxis\":{\n \"scale\":\"log\",\n \"label\":\"y\",\n \"include_zero\":false,\n \"min\":\"5\",\n \"max\":\"2222\"\n },\n \"color_by_groups\":[\n \"account\",\n \"apm-role-group\"\n ]\n }\n },\n {\n \"id\":1669590772917638,\n \"definition\":{\n \"title\":\"env: prod, datacenter:dc1, service: master-db\",\n \"title_size\":\"16\",\n \"title_align\":\"left\",\n \"type\":\"servicemap\",\n \"service\":\"master-db\",\n \"filters\":[\n \"env:prod\",\n \"datacenter:dc1\"\n ]\n }\n },\n {\n \"id\":2138829058361817,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"show_legend\":true,\n \"legend_size\":\"2\",\n \"type\":\"timeseries\",\n \"requests\":[\n {\n \"q\":\"avg:system.cpu.user{app:general} by {env}\",\n \"on_right_yaxis\":false,\n \"metadata\":[\n {\n \"expression\":\"avg:system.cpu.user{app:general} by {env}\",\n \"alias_name\":\"Alpha\"\n }\n ],\n \"style\":{\n \"palette\":\"warm\",\n \"line_type\":\"dashed\",\n \"line_width\":\"thin\"\n },\n \"display_type\":\"line\"\n },\n {\n \"on_right_yaxis\":false,\n \"log_query\":{\n \"index\":\"mcnulty\",\n \"search\":{\n \"query\":\"status:info\"\n },\n \"group_by\":[\n {\n \"facet\":\"host\",\n \"sort\":{\n \"facet\":\"@duration\",\n \"aggregation\":\"avg\",\n \"order\":\"desc\"\n },\n \"limit\":10\n }\n ],\n \"compute\":{\n \"facet\":\"@duration\",\n \"interval\":5000,\n \"aggregation\":\"avg\"\n }\n },\n \"display_type\":\"area\"\n },\n {\n \"on_right_yaxis\":false,\n \"apm_query\":{\n \"index\":\"apm-search\",\n \"search\":{\n \"query\":\"type:web\"\n },\n \"group_by\":[\n {\n \"facet\":\"resource_name\",\n \"sort\":{\n \"facet\":\"@string_query.interval\",\n \"aggregation\":\"avg\",\n \"order\":\"desc\"\n },\n \"limit\":50\n }\n ],\n \"compute\":{\n \"facet\":\"@duration\",\n \"interval\":5000,\n \"aggregation\":\"avg\"\n }\n },\n \"display_type\":\"bars\"\n },\n {\n \"on_right_yaxis\":false,\n \"process_query\":{\n \"search_by\":\"error\",\n \"metric\":\"process.stat.cpu.total_pct\",\n \"limit\":50,\n \"filter_by\":[\n \"active\"\n ]\n },\n \"display_type\":\"area\"\n }\n ],\n \"yaxis\":{\n \"scale\":\"log\",\n \"include_zero\":false,\n \"max\":\"100\"\n },\n \"events\":[\n {\n \"q\":\"sources:test tags:1\"\n },\n {\n \"q\":\"sources:test tags:2\"\n }\n ],\n \"markers\":[\n {\n \"label\":\" z=6 \",\n \"value\":\"y = 4\",\n \"display_type\":\"error dashed\"\n },\n {\n \"label\":\" x=8 \",\n \"value\":\"10 \u003c y \u003c 999\",\n \"display_type\":\"ok solid\"\n }\n ]\n }\n },\n {\n \"id\":7307171374656551,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"toplist\",\n \"requests\":[\n {\n \"q\":\"avg:system.cpu.user{app:general} by {env}\",\n \"conditional_formats\":[\n {\n \"hide_value\":false,\n \"comparator\":\"\u003c\",\n \"palette\":\"white_on_green\",\n \"value\":2\n },\n {\n \"hide_value\":false,\n \"comparator\":\"\u003e\",\n \"palette\":\"white_on_red\",\n \"value\":2.2\n }\n ]\n }\n ]\n }\n },\n {\n \"id\":7086674838553258,\n \"definition\":{\n \"title\":\"Group Widget\",\n \"type\":\"group\",\n \"layout_type\":\"ordered\",\n \"widgets\":[\n {\n \"id\":3726092277657502,\n \"definition\":{\n \"type\":\"note\",\n \"content\":\"cluster note widget\",\n \"background_color\":\"pink\",\n \"font_size\":\"14\",\n \"text_align\":\"center\",\n \"show_tick\":true,\n \"tick_pos\":\"50%\",\n \"tick_edge\":\"left\"\n }\n },\n {\n \"id\":6376384650558057,\n \"definition\":{\n \"title\":\"Alert Graph\",\n \"type\":\"alert_graph\",\n \"alert_id\":\"123\",\n \"viz_type\":\"toplist\"\n }\n }\n ]\n }\n },\n {\n \"id\":4668903563678912,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"slo\",\n \"view_type\":\"detail\",\n \"time_windows\":[\n \"7d\",\n \"previous_week\"\n ],\n \"slo_id\":\"56789\",\n \"show_error_budget\":true,\n \"view_mode\":\"overall\",\n \"global_time_target\":\"0\"\n }\n }\n ],\n \"template_variables\":[\n {\n \"name\":\"var_1\",\n \"default\":\"aws\",\n \"prefix\":\"host\"\n },\n {\n \"name\":\"var_2\",\n \"default\":\"autoscaling\",\n \"prefix\":\"service_name\"\n }\n ],\n \"layout_type\":\"ordered\",\n \"is_read_only\":true,\n \"notify_list\":[\n\n ],\n \"template_variable_presets\":[\n {\n \"name\":\"preset_1\",\n \"template_variables\":[\n {\n \"name\":\"var_1\",\n \"value\":\"host.dc\"\n },\n {\n \"name\":\"var_2\",\n \"value\":\"my_service\"\n }\n ]\n }\n ]\n}\n\n`});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Example Dashboard JSON\ndashboard_json = datadog.DashboardJson(\"dashboardJson\", dashboard=\"\"\"{\n \"title\":\"Ordered Layout Dashboard\",\n \"description\":\"Created using the Datadog provider in Terraform\",\n \"widgets\":[\n {\n \"id\":719369537777170,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"alert_graph\",\n \"alert_id\":\"895605\",\n \"viz_type\":\"timeseries\"\n }\n },\n {\n \"id\":2306240030393868,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"alert_value\",\n \"alert_id\":\"895605\",\n \"unit\":\"b\",\n \"text_align\":\"center\",\n \"precision\":3\n }\n },\n {\n \"id\":6990998850881326,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"alert_value\",\n \"alert_id\":\"895605\",\n \"unit\":\"b\",\n \"text_align\":\"center\",\n \"precision\":3\n }\n },\n {\n \"id\":3351284044659007,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"change\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"compare_to\":\"week_before\",\n \"change_type\":\"absolute\",\n \"order_dir\":\"desc\",\n \"increase_good\":true,\n \"order_by\":\"name\",\n \"show_present\":true\n }\n ]\n }\n },\n {\n \"id\":6450290622996182,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"show_legend\":false,\n \"type\":\"distribution\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"style\":{\n \"palette\":\"warm\"\n }\n }\n ]\n }\n },\n {\n \"id\":4902842646291536,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"check_status\",\n \"check\":\"aws.ecs.agent_connected\",\n \"grouping\":\"cluster\",\n \"group_by\":[\n \"account\",\n \"cluster\"\n ],\n \"tags\":[\n \"account:demo\",\n \"cluster:awseb-ruthebdog-env-8-dn3m6u3gvk\"\n ]\n }\n },\n {\n \"id\":6392349954822644,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"show_legend\":false,\n \"type\":\"heatmap\",\n \"yaxis\":{\n \"scale\":\"sqrt\",\n \"include_zero\":true,\n \"min\":\"1\",\n \"max\":\"2\"\n },\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"style\":{\n \"palette\":\"warm\"\n }\n }\n ]\n }\n },\n {\n \"id\":5222961478940988,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"hostmap\",\n \"requests\":{\n \"fill\":{\n \"q\":\"avg:system.load.1{*} by {host}\"\n },\n \"size\":{\n \"q\":\"avg:memcache.uptime{*} by {host}\"\n }\n },\n \"node_type\":\"container\",\n \"no_metric_hosts\":true,\n \"no_group_hosts\":true,\n \"group\":[\n \"host\",\n \"region\"\n ],\n \"scope\":[\n \"region:us-east-1\",\n \"aws_account:727006795293\"\n ],\n \"style\":{\n \"palette\":\"yellow_to_green\",\n \"palette_flip\":true,\n \"fill_min\":\"10\",\n \"fill_max\":\"20\"\n }\n }\n },\n {\n \"id\":8121199734227072,\n \"definition\":{\n \"type\":\"note\",\n \"content\":\"note text\",\n \"background_color\":\"pink\",\n \"font_size\":\"14\",\n \"text_align\":\"center\",\n \"show_tick\":true,\n \"tick_pos\":\"50%\",\n \"tick_edge\":\"left\"\n }\n },\n {\n \"id\":1775856835833038,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"query_value\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"aggregator\":\"sum\",\n \"conditional_formats\":[\n {\n \"hide_value\":false,\n \"comparator\":\"\u003c\",\n \"palette\":\"white_on_green\",\n \"value\":2\n },\n {\n \"hide_value\":false,\n \"comparator\":\"\u003e\",\n \"palette\":\"white_on_red\",\n \"value\":2.2\n }\n ]\n }\n ],\n \"autoscale\":true,\n \"custom_unit\":\"xx\",\n \"text_align\":\"right\",\n \"precision\":4\n }\n },\n {\n \"id\":8461455966625581,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"query_table\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"aggregator\":\"sum\",\n \"conditional_formats\":[\n {\n \"hide_value\":false,\n \"comparator\":\"\u003c\",\n \"palette\":\"white_on_green\",\n \"value\":2\n },\n {\n \"hide_value\":false,\n \"comparator\":\"\u003e\",\n \"palette\":\"white_on_red\",\n \"value\":2.2\n }\n ],\n \"limit\":10\n }\n ]\n }\n },\n {\n \"id\":8660006349418736,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"scatterplot\",\n \"requests\":{\n \"x\":{\n \"q\":\"avg:system.cpu.user{*} by {service, account}\",\n \"aggregator\":\"max\"\n },\n \"y\":{\n \"q\":\"avg:system.mem.used{*} by {service, account}\",\n \"aggregator\":\"min\"\n }\n },\n \"xaxis\":{\n \"scale\":\"pow\",\n \"label\":\"x\",\n \"include_zero\":true,\n \"min\":\"1\",\n \"max\":\"2000\"\n },\n \"yaxis\":{\n \"scale\":\"log\",\n \"label\":\"y\",\n \"include_zero\":false,\n \"min\":\"5\",\n \"max\":\"2222\"\n },\n \"color_by_groups\":[\n \"account\",\n \"apm-role-group\"\n ]\n }\n },\n {\n \"id\":1669590772917638,\n \"definition\":{\n \"title\":\"env: prod, datacenter:dc1, service: master-db\",\n \"title_size\":\"16\",\n \"title_align\":\"left\",\n \"type\":\"servicemap\",\n \"service\":\"master-db\",\n \"filters\":[\n \"env:prod\",\n \"datacenter:dc1\"\n ]\n }\n },\n {\n \"id\":2138829058361817,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"show_legend\":true,\n \"legend_size\":\"2\",\n \"type\":\"timeseries\",\n \"requests\":[\n {\n \"q\":\"avg:system.cpu.user{app:general} by {env}\",\n \"on_right_yaxis\":false,\n \"metadata\":[\n {\n \"expression\":\"avg:system.cpu.user{app:general} by {env}\",\n \"alias_name\":\"Alpha\"\n }\n ],\n \"style\":{\n \"palette\":\"warm\",\n \"line_type\":\"dashed\",\n \"line_width\":\"thin\"\n },\n \"display_type\":\"line\"\n },\n {\n \"on_right_yaxis\":false,\n \"log_query\":{\n \"index\":\"mcnulty\",\n \"search\":{\n \"query\":\"status:info\"\n },\n \"group_by\":[\n {\n \"facet\":\"host\",\n \"sort\":{\n \"facet\":\"@duration\",\n \"aggregation\":\"avg\",\n \"order\":\"desc\"\n },\n \"limit\":10\n }\n ],\n \"compute\":{\n \"facet\":\"@duration\",\n \"interval\":5000,\n \"aggregation\":\"avg\"\n }\n },\n \"display_type\":\"area\"\n },\n {\n \"on_right_yaxis\":false,\n \"apm_query\":{\n \"index\":\"apm-search\",\n \"search\":{\n \"query\":\"type:web\"\n },\n \"group_by\":[\n {\n \"facet\":\"resource_name\",\n \"sort\":{\n \"facet\":\"@string_query.interval\",\n \"aggregation\":\"avg\",\n \"order\":\"desc\"\n },\n \"limit\":50\n }\n ],\n \"compute\":{\n \"facet\":\"@duration\",\n \"interval\":5000,\n \"aggregation\":\"avg\"\n }\n },\n \"display_type\":\"bars\"\n },\n {\n \"on_right_yaxis\":false,\n \"process_query\":{\n \"search_by\":\"error\",\n \"metric\":\"process.stat.cpu.total_pct\",\n \"limit\":50,\n \"filter_by\":[\n \"active\"\n ]\n },\n \"display_type\":\"area\"\n }\n ],\n \"yaxis\":{\n \"scale\":\"log\",\n \"include_zero\":false,\n \"max\":\"100\"\n },\n \"events\":[\n {\n \"q\":\"sources:test tags:1\"\n },\n {\n \"q\":\"sources:test tags:2\"\n }\n ],\n \"markers\":[\n {\n \"label\":\" z=6 \",\n \"value\":\"y = 4\",\n \"display_type\":\"error dashed\"\n },\n {\n \"label\":\" x=8 \",\n \"value\":\"10 \u003c y \u003c 999\",\n \"display_type\":\"ok solid\"\n }\n ]\n }\n },\n {\n \"id\":7307171374656551,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"toplist\",\n \"requests\":[\n {\n \"q\":\"avg:system.cpu.user{app:general} by {env}\",\n \"conditional_formats\":[\n {\n \"hide_value\":false,\n \"comparator\":\"\u003c\",\n \"palette\":\"white_on_green\",\n \"value\":2\n },\n {\n \"hide_value\":false,\n \"comparator\":\"\u003e\",\n \"palette\":\"white_on_red\",\n \"value\":2.2\n }\n ]\n }\n ]\n }\n },\n {\n \"id\":7086674838553258,\n \"definition\":{\n \"title\":\"Group Widget\",\n \"type\":\"group\",\n \"layout_type\":\"ordered\",\n \"widgets\":[\n {\n \"id\":3726092277657502,\n \"definition\":{\n \"type\":\"note\",\n \"content\":\"cluster note widget\",\n \"background_color\":\"pink\",\n \"font_size\":\"14\",\n \"text_align\":\"center\",\n \"show_tick\":true,\n \"tick_pos\":\"50%\",\n \"tick_edge\":\"left\"\n }\n },\n {\n \"id\":6376384650558057,\n \"definition\":{\n \"title\":\"Alert Graph\",\n \"type\":\"alert_graph\",\n \"alert_id\":\"123\",\n \"viz_type\":\"toplist\"\n }\n }\n ]\n }\n },\n {\n \"id\":4668903563678912,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"slo\",\n \"view_type\":\"detail\",\n \"time_windows\":[\n \"7d\",\n \"previous_week\"\n ],\n \"slo_id\":\"56789\",\n \"show_error_budget\":true,\n \"view_mode\":\"overall\",\n \"global_time_target\":\"0\"\n }\n }\n ],\n \"template_variables\":[\n {\n \"name\":\"var_1\",\n \"default\":\"aws\",\n \"prefix\":\"host\"\n },\n {\n \"name\":\"var_2\",\n \"default\":\"autoscaling\",\n \"prefix\":\"service_name\"\n }\n ],\n \"layout_type\":\"ordered\",\n \"is_read_only\":true,\n \"notify_list\":[\n\n ],\n \"template_variable_presets\":[\n {\n \"name\":\"preset_1\",\n \"template_variables\":[\n {\n \"name\":\"var_1\",\n \"value\":\"host.dc\"\n },\n {\n \"name\":\"var_2\",\n \"value\":\"my_service\"\n }\n ]\n }\n ]\n}\n\n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Example Dashboard JSON\n var dashboardJson = new Datadog.DashboardJson(\"dashboardJson\", new()\n {\n Dashboard = @\"{\n \"\"title\"\":\"\"Ordered Layout Dashboard\"\",\n \"\"description\"\":\"\"Created using the Datadog provider in Terraform\"\",\n \"\"widgets\"\":[\n {\n \"\"id\"\":719369537777170,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Widget Title\"\",\n \"\"type\"\":\"\"alert_graph\"\",\n \"\"alert_id\"\":\"\"895605\"\",\n \"\"viz_type\"\":\"\"timeseries\"\"\n }\n },\n {\n \"\"id\"\":2306240030393868,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Widget Title\"\",\n \"\"type\"\":\"\"alert_value\"\",\n \"\"alert_id\"\":\"\"895605\"\",\n \"\"unit\"\":\"\"b\"\",\n \"\"text_align\"\":\"\"center\"\",\n \"\"precision\"\":3\n }\n },\n {\n \"\"id\"\":6990998850881326,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Widget Title\"\",\n \"\"type\"\":\"\"alert_value\"\",\n \"\"alert_id\"\":\"\"895605\"\",\n \"\"unit\"\":\"\"b\"\",\n \"\"text_align\"\":\"\"center\"\",\n \"\"precision\"\":3\n }\n },\n {\n \"\"id\"\":3351284044659007,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Widget Title\"\",\n \"\"type\"\":\"\"change\"\",\n \"\"requests\"\":[\n {\n \"\"q\"\":\"\"avg:system.load.1{env:staging} by {account}\"\",\n \"\"compare_to\"\":\"\"week_before\"\",\n \"\"change_type\"\":\"\"absolute\"\",\n \"\"order_dir\"\":\"\"desc\"\",\n \"\"increase_good\"\":true,\n \"\"order_by\"\":\"\"name\"\",\n \"\"show_present\"\":true\n }\n ]\n }\n },\n {\n \"\"id\"\":6450290622996182,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Widget Title\"\",\n \"\"show_legend\"\":false,\n \"\"type\"\":\"\"distribution\"\",\n \"\"requests\"\":[\n {\n \"\"q\"\":\"\"avg:system.load.1{env:staging} by {account}\"\",\n \"\"style\"\":{\n \"\"palette\"\":\"\"warm\"\"\n }\n }\n ]\n }\n },\n {\n \"\"id\"\":4902842646291536,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Widget Title\"\",\n \"\"type\"\":\"\"check_status\"\",\n \"\"check\"\":\"\"aws.ecs.agent_connected\"\",\n \"\"grouping\"\":\"\"cluster\"\",\n \"\"group_by\"\":[\n \"\"account\"\",\n \"\"cluster\"\"\n ],\n \"\"tags\"\":[\n \"\"account:demo\"\",\n \"\"cluster:awseb-ruthebdog-env-8-dn3m6u3gvk\"\"\n ]\n }\n },\n {\n \"\"id\"\":6392349954822644,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Widget Title\"\",\n \"\"show_legend\"\":false,\n \"\"type\"\":\"\"heatmap\"\",\n \"\"yaxis\"\":{\n \"\"scale\"\":\"\"sqrt\"\",\n \"\"include_zero\"\":true,\n \"\"min\"\":\"\"1\"\",\n \"\"max\"\":\"\"2\"\"\n },\n \"\"requests\"\":[\n {\n \"\"q\"\":\"\"avg:system.load.1{env:staging} by {account}\"\",\n \"\"style\"\":{\n \"\"palette\"\":\"\"warm\"\"\n }\n }\n ]\n }\n },\n {\n \"\"id\"\":5222961478940988,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Widget Title\"\",\n \"\"type\"\":\"\"hostmap\"\",\n \"\"requests\"\":{\n \"\"fill\"\":{\n \"\"q\"\":\"\"avg:system.load.1{*} by {host}\"\"\n },\n \"\"size\"\":{\n \"\"q\"\":\"\"avg:memcache.uptime{*} by {host}\"\"\n }\n },\n \"\"node_type\"\":\"\"container\"\",\n \"\"no_metric_hosts\"\":true,\n \"\"no_group_hosts\"\":true,\n \"\"group\"\":[\n \"\"host\"\",\n \"\"region\"\"\n ],\n \"\"scope\"\":[\n \"\"region:us-east-1\"\",\n \"\"aws_account:727006795293\"\"\n ],\n \"\"style\"\":{\n \"\"palette\"\":\"\"yellow_to_green\"\",\n \"\"palette_flip\"\":true,\n \"\"fill_min\"\":\"\"10\"\",\n \"\"fill_max\"\":\"\"20\"\"\n }\n }\n },\n {\n \"\"id\"\":8121199734227072,\n \"\"definition\"\":{\n \"\"type\"\":\"\"note\"\",\n \"\"content\"\":\"\"note text\"\",\n \"\"background_color\"\":\"\"pink\"\",\n \"\"font_size\"\":\"\"14\"\",\n \"\"text_align\"\":\"\"center\"\",\n \"\"show_tick\"\":true,\n \"\"tick_pos\"\":\"\"50%\"\",\n \"\"tick_edge\"\":\"\"left\"\"\n }\n },\n {\n \"\"id\"\":1775856835833038,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Widget Title\"\",\n \"\"type\"\":\"\"query_value\"\",\n \"\"requests\"\":[\n {\n \"\"q\"\":\"\"avg:system.load.1{env:staging} by {account}\"\",\n \"\"aggregator\"\":\"\"sum\"\",\n \"\"conditional_formats\"\":[\n {\n \"\"hide_value\"\":false,\n \"\"comparator\"\":\"\"\u003c\"\",\n \"\"palette\"\":\"\"white_on_green\"\",\n \"\"value\"\":2\n },\n {\n \"\"hide_value\"\":false,\n \"\"comparator\"\":\"\"\u003e\"\",\n \"\"palette\"\":\"\"white_on_red\"\",\n \"\"value\"\":2.2\n }\n ]\n }\n ],\n \"\"autoscale\"\":true,\n \"\"custom_unit\"\":\"\"xx\"\",\n \"\"text_align\"\":\"\"right\"\",\n \"\"precision\"\":4\n }\n },\n {\n \"\"id\"\":8461455966625581,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Widget Title\"\",\n \"\"type\"\":\"\"query_table\"\",\n \"\"requests\"\":[\n {\n \"\"q\"\":\"\"avg:system.load.1{env:staging} by {account}\"\",\n \"\"aggregator\"\":\"\"sum\"\",\n \"\"conditional_formats\"\":[\n {\n \"\"hide_value\"\":false,\n \"\"comparator\"\":\"\"\u003c\"\",\n \"\"palette\"\":\"\"white_on_green\"\",\n \"\"value\"\":2\n },\n {\n \"\"hide_value\"\":false,\n \"\"comparator\"\":\"\"\u003e\"\",\n \"\"palette\"\":\"\"white_on_red\"\",\n \"\"value\"\":2.2\n }\n ],\n \"\"limit\"\":10\n }\n ]\n }\n },\n {\n \"\"id\"\":8660006349418736,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Widget Title\"\",\n \"\"type\"\":\"\"scatterplot\"\",\n \"\"requests\"\":{\n \"\"x\"\":{\n \"\"q\"\":\"\"avg:system.cpu.user{*} by {service, account}\"\",\n \"\"aggregator\"\":\"\"max\"\"\n },\n \"\"y\"\":{\n \"\"q\"\":\"\"avg:system.mem.used{*} by {service, account}\"\",\n \"\"aggregator\"\":\"\"min\"\"\n }\n },\n \"\"xaxis\"\":{\n \"\"scale\"\":\"\"pow\"\",\n \"\"label\"\":\"\"x\"\",\n \"\"include_zero\"\":true,\n \"\"min\"\":\"\"1\"\",\n \"\"max\"\":\"\"2000\"\"\n },\n \"\"yaxis\"\":{\n \"\"scale\"\":\"\"log\"\",\n \"\"label\"\":\"\"y\"\",\n \"\"include_zero\"\":false,\n \"\"min\"\":\"\"5\"\",\n \"\"max\"\":\"\"2222\"\"\n },\n \"\"color_by_groups\"\":[\n \"\"account\"\",\n \"\"apm-role-group\"\"\n ]\n }\n },\n {\n \"\"id\"\":1669590772917638,\n \"\"definition\"\":{\n \"\"title\"\":\"\"env: prod, datacenter:dc1, service: master-db\"\",\n \"\"title_size\"\":\"\"16\"\",\n \"\"title_align\"\":\"\"left\"\",\n \"\"type\"\":\"\"servicemap\"\",\n \"\"service\"\":\"\"master-db\"\",\n \"\"filters\"\":[\n \"\"env:prod\"\",\n \"\"datacenter:dc1\"\"\n ]\n }\n },\n {\n \"\"id\"\":2138829058361817,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Widget Title\"\",\n \"\"show_legend\"\":true,\n \"\"legend_size\"\":\"\"2\"\",\n \"\"type\"\":\"\"timeseries\"\",\n \"\"requests\"\":[\n {\n \"\"q\"\":\"\"avg:system.cpu.user{app:general} by {env}\"\",\n \"\"on_right_yaxis\"\":false,\n \"\"metadata\"\":[\n {\n \"\"expression\"\":\"\"avg:system.cpu.user{app:general} by {env}\"\",\n \"\"alias_name\"\":\"\"Alpha\"\"\n }\n ],\n \"\"style\"\":{\n \"\"palette\"\":\"\"warm\"\",\n \"\"line_type\"\":\"\"dashed\"\",\n \"\"line_width\"\":\"\"thin\"\"\n },\n \"\"display_type\"\":\"\"line\"\"\n },\n {\n \"\"on_right_yaxis\"\":false,\n \"\"log_query\"\":{\n \"\"index\"\":\"\"mcnulty\"\",\n \"\"search\"\":{\n \"\"query\"\":\"\"status:info\"\"\n },\n \"\"group_by\"\":[\n {\n \"\"facet\"\":\"\"host\"\",\n \"\"sort\"\":{\n \"\"facet\"\":\"\"@duration\"\",\n \"\"aggregation\"\":\"\"avg\"\",\n \"\"order\"\":\"\"desc\"\"\n },\n \"\"limit\"\":10\n }\n ],\n \"\"compute\"\":{\n \"\"facet\"\":\"\"@duration\"\",\n \"\"interval\"\":5000,\n \"\"aggregation\"\":\"\"avg\"\"\n }\n },\n \"\"display_type\"\":\"\"area\"\"\n },\n {\n \"\"on_right_yaxis\"\":false,\n \"\"apm_query\"\":{\n \"\"index\"\":\"\"apm-search\"\",\n \"\"search\"\":{\n \"\"query\"\":\"\"type:web\"\"\n },\n \"\"group_by\"\":[\n {\n \"\"facet\"\":\"\"resource_name\"\",\n \"\"sort\"\":{\n \"\"facet\"\":\"\"@string_query.interval\"\",\n \"\"aggregation\"\":\"\"avg\"\",\n \"\"order\"\":\"\"desc\"\"\n },\n \"\"limit\"\":50\n }\n ],\n \"\"compute\"\":{\n \"\"facet\"\":\"\"@duration\"\",\n \"\"interval\"\":5000,\n \"\"aggregation\"\":\"\"avg\"\"\n }\n },\n \"\"display_type\"\":\"\"bars\"\"\n },\n {\n \"\"on_right_yaxis\"\":false,\n \"\"process_query\"\":{\n \"\"search_by\"\":\"\"error\"\",\n \"\"metric\"\":\"\"process.stat.cpu.total_pct\"\",\n \"\"limit\"\":50,\n \"\"filter_by\"\":[\n \"\"active\"\"\n ]\n },\n \"\"display_type\"\":\"\"area\"\"\n }\n ],\n \"\"yaxis\"\":{\n \"\"scale\"\":\"\"log\"\",\n \"\"include_zero\"\":false,\n \"\"max\"\":\"\"100\"\"\n },\n \"\"events\"\":[\n {\n \"\"q\"\":\"\"sources:test tags:1\"\"\n },\n {\n \"\"q\"\":\"\"sources:test tags:2\"\"\n }\n ],\n \"\"markers\"\":[\n {\n \"\"label\"\":\"\" z=6 \"\",\n \"\"value\"\":\"\"y = 4\"\",\n \"\"display_type\"\":\"\"error dashed\"\"\n },\n {\n \"\"label\"\":\"\" x=8 \"\",\n \"\"value\"\":\"\"10 \u003c y \u003c 999\"\",\n \"\"display_type\"\":\"\"ok solid\"\"\n }\n ]\n }\n },\n {\n \"\"id\"\":7307171374656551,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Widget Title\"\",\n \"\"type\"\":\"\"toplist\"\",\n \"\"requests\"\":[\n {\n \"\"q\"\":\"\"avg:system.cpu.user{app:general} by {env}\"\",\n \"\"conditional_formats\"\":[\n {\n \"\"hide_value\"\":false,\n \"\"comparator\"\":\"\"\u003c\"\",\n \"\"palette\"\":\"\"white_on_green\"\",\n \"\"value\"\":2\n },\n {\n \"\"hide_value\"\":false,\n \"\"comparator\"\":\"\"\u003e\"\",\n \"\"palette\"\":\"\"white_on_red\"\",\n \"\"value\"\":2.2\n }\n ]\n }\n ]\n }\n },\n {\n \"\"id\"\":7086674838553258,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Group Widget\"\",\n \"\"type\"\":\"\"group\"\",\n \"\"layout_type\"\":\"\"ordered\"\",\n \"\"widgets\"\":[\n {\n \"\"id\"\":3726092277657502,\n \"\"definition\"\":{\n \"\"type\"\":\"\"note\"\",\n \"\"content\"\":\"\"cluster note widget\"\",\n \"\"background_color\"\":\"\"pink\"\",\n \"\"font_size\"\":\"\"14\"\",\n \"\"text_align\"\":\"\"center\"\",\n \"\"show_tick\"\":true,\n \"\"tick_pos\"\":\"\"50%\"\",\n \"\"tick_edge\"\":\"\"left\"\"\n }\n },\n {\n \"\"id\"\":6376384650558057,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Alert Graph\"\",\n \"\"type\"\":\"\"alert_graph\"\",\n \"\"alert_id\"\":\"\"123\"\",\n \"\"viz_type\"\":\"\"toplist\"\"\n }\n }\n ]\n }\n },\n {\n \"\"id\"\":4668903563678912,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Widget Title\"\",\n \"\"type\"\":\"\"slo\"\",\n \"\"view_type\"\":\"\"detail\"\",\n \"\"time_windows\"\":[\n \"\"7d\"\",\n \"\"previous_week\"\"\n ],\n \"\"slo_id\"\":\"\"56789\"\",\n \"\"show_error_budget\"\":true,\n \"\"view_mode\"\":\"\"overall\"\",\n \"\"global_time_target\"\":\"\"0\"\"\n }\n }\n ],\n \"\"template_variables\"\":[\n {\n \"\"name\"\":\"\"var_1\"\",\n \"\"default\"\":\"\"aws\"\",\n \"\"prefix\"\":\"\"host\"\"\n },\n {\n \"\"name\"\":\"\"var_2\"\",\n \"\"default\"\":\"\"autoscaling\"\",\n \"\"prefix\"\":\"\"service_name\"\"\n }\n ],\n \"\"layout_type\"\":\"\"ordered\"\",\n \"\"is_read_only\"\":true,\n \"\"notify_list\"\":[\n\n ],\n \"\"template_variable_presets\"\":[\n {\n \"\"name\"\":\"\"preset_1\"\",\n \"\"template_variables\"\":[\n {\n \"\"name\"\":\"\"var_1\"\",\n \"\"value\"\":\"\"host.dc\"\"\n },\n {\n \"\"name\"\":\"\"var_2\"\",\n \"\"value\"\":\"\"my_service\"\"\n }\n ]\n }\n ]\n}\n\n\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v4/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewDashboardJson(ctx, \"dashboardJson\", \u0026datadog.DashboardJsonArgs{\n\t\t\tDashboard: pulumi.String(`{\n \"title\":\"Ordered Layout Dashboard\",\n \"description\":\"Created using the Datadog provider in Terraform\",\n \"widgets\":[\n {\n \"id\":719369537777170,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"alert_graph\",\n \"alert_id\":\"895605\",\n \"viz_type\":\"timeseries\"\n }\n },\n {\n \"id\":2306240030393868,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"alert_value\",\n \"alert_id\":\"895605\",\n \"unit\":\"b\",\n \"text_align\":\"center\",\n \"precision\":3\n }\n },\n {\n \"id\":6990998850881326,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"alert_value\",\n \"alert_id\":\"895605\",\n \"unit\":\"b\",\n \"text_align\":\"center\",\n \"precision\":3\n }\n },\n {\n \"id\":3351284044659007,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"change\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"compare_to\":\"week_before\",\n \"change_type\":\"absolute\",\n \"order_dir\":\"desc\",\n \"increase_good\":true,\n \"order_by\":\"name\",\n \"show_present\":true\n }\n ]\n }\n },\n {\n \"id\":6450290622996182,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"show_legend\":false,\n \"type\":\"distribution\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"style\":{\n \"palette\":\"warm\"\n }\n }\n ]\n }\n },\n {\n \"id\":4902842646291536,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"check_status\",\n \"check\":\"aws.ecs.agent_connected\",\n \"grouping\":\"cluster\",\n \"group_by\":[\n \"account\",\n \"cluster\"\n ],\n \"tags\":[\n \"account:demo\",\n \"cluster:awseb-ruthebdog-env-8-dn3m6u3gvk\"\n ]\n }\n },\n {\n \"id\":6392349954822644,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"show_legend\":false,\n \"type\":\"heatmap\",\n \"yaxis\":{\n \"scale\":\"sqrt\",\n \"include_zero\":true,\n \"min\":\"1\",\n \"max\":\"2\"\n },\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"style\":{\n \"palette\":\"warm\"\n }\n }\n ]\n }\n },\n {\n \"id\":5222961478940988,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"hostmap\",\n \"requests\":{\n \"fill\":{\n \"q\":\"avg:system.load.1{*} by {host}\"\n },\n \"size\":{\n \"q\":\"avg:memcache.uptime{*} by {host}\"\n }\n },\n \"node_type\":\"container\",\n \"no_metric_hosts\":true,\n \"no_group_hosts\":true,\n \"group\":[\n \"host\",\n \"region\"\n ],\n \"scope\":[\n \"region:us-east-1\",\n \"aws_account:727006795293\"\n ],\n \"style\":{\n \"palette\":\"yellow_to_green\",\n \"palette_flip\":true,\n \"fill_min\":\"10\",\n \"fill_max\":\"20\"\n }\n }\n },\n {\n \"id\":8121199734227072,\n \"definition\":{\n \"type\":\"note\",\n \"content\":\"note text\",\n \"background_color\":\"pink\",\n \"font_size\":\"14\",\n \"text_align\":\"center\",\n \"show_tick\":true,\n \"tick_pos\":\"50%\",\n \"tick_edge\":\"left\"\n }\n },\n {\n \"id\":1775856835833038,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"query_value\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"aggregator\":\"sum\",\n \"conditional_formats\":[\n {\n \"hide_value\":false,\n \"comparator\":\"\u003c\",\n \"palette\":\"white_on_green\",\n \"value\":2\n },\n {\n \"hide_value\":false,\n \"comparator\":\"\u003e\",\n \"palette\":\"white_on_red\",\n \"value\":2.2\n }\n ]\n }\n ],\n \"autoscale\":true,\n \"custom_unit\":\"xx\",\n \"text_align\":\"right\",\n \"precision\":4\n }\n },\n {\n \"id\":8461455966625581,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"query_table\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"aggregator\":\"sum\",\n \"conditional_formats\":[\n {\n \"hide_value\":false,\n \"comparator\":\"\u003c\",\n \"palette\":\"white_on_green\",\n \"value\":2\n },\n {\n \"hide_value\":false,\n \"comparator\":\"\u003e\",\n \"palette\":\"white_on_red\",\n \"value\":2.2\n }\n ],\n \"limit\":10\n }\n ]\n }\n },\n {\n \"id\":8660006349418736,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"scatterplot\",\n \"requests\":{\n \"x\":{\n \"q\":\"avg:system.cpu.user{*} by {service, account}\",\n \"aggregator\":\"max\"\n },\n \"y\":{\n \"q\":\"avg:system.mem.used{*} by {service, account}\",\n \"aggregator\":\"min\"\n }\n },\n \"xaxis\":{\n \"scale\":\"pow\",\n \"label\":\"x\",\n \"include_zero\":true,\n \"min\":\"1\",\n \"max\":\"2000\"\n },\n \"yaxis\":{\n \"scale\":\"log\",\n \"label\":\"y\",\n \"include_zero\":false,\n \"min\":\"5\",\n \"max\":\"2222\"\n },\n \"color_by_groups\":[\n \"account\",\n \"apm-role-group\"\n ]\n }\n },\n {\n \"id\":1669590772917638,\n \"definition\":{\n \"title\":\"env: prod, datacenter:dc1, service: master-db\",\n \"title_size\":\"16\",\n \"title_align\":\"left\",\n \"type\":\"servicemap\",\n \"service\":\"master-db\",\n \"filters\":[\n \"env:prod\",\n \"datacenter:dc1\"\n ]\n }\n },\n {\n \"id\":2138829058361817,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"show_legend\":true,\n \"legend_size\":\"2\",\n \"type\":\"timeseries\",\n \"requests\":[\n {\n \"q\":\"avg:system.cpu.user{app:general} by {env}\",\n \"on_right_yaxis\":false,\n \"metadata\":[\n {\n \"expression\":\"avg:system.cpu.user{app:general} by {env}\",\n \"alias_name\":\"Alpha\"\n }\n ],\n \"style\":{\n \"palette\":\"warm\",\n \"line_type\":\"dashed\",\n \"line_width\":\"thin\"\n },\n \"display_type\":\"line\"\n },\n {\n \"on_right_yaxis\":false,\n \"log_query\":{\n \"index\":\"mcnulty\",\n \"search\":{\n \"query\":\"status:info\"\n },\n \"group_by\":[\n {\n \"facet\":\"host\",\n \"sort\":{\n \"facet\":\"@duration\",\n \"aggregation\":\"avg\",\n \"order\":\"desc\"\n },\n \"limit\":10\n }\n ],\n \"compute\":{\n \"facet\":\"@duration\",\n \"interval\":5000,\n \"aggregation\":\"avg\"\n }\n },\n \"display_type\":\"area\"\n },\n {\n \"on_right_yaxis\":false,\n \"apm_query\":{\n \"index\":\"apm-search\",\n \"search\":{\n \"query\":\"type:web\"\n },\n \"group_by\":[\n {\n \"facet\":\"resource_name\",\n \"sort\":{\n \"facet\":\"@string_query.interval\",\n \"aggregation\":\"avg\",\n \"order\":\"desc\"\n },\n \"limit\":50\n }\n ],\n \"compute\":{\n \"facet\":\"@duration\",\n \"interval\":5000,\n \"aggregation\":\"avg\"\n }\n },\n \"display_type\":\"bars\"\n },\n {\n \"on_right_yaxis\":false,\n \"process_query\":{\n \"search_by\":\"error\",\n \"metric\":\"process.stat.cpu.total_pct\",\n \"limit\":50,\n \"filter_by\":[\n \"active\"\n ]\n },\n \"display_type\":\"area\"\n }\n ],\n \"yaxis\":{\n \"scale\":\"log\",\n \"include_zero\":false,\n \"max\":\"100\"\n },\n \"events\":[\n {\n \"q\":\"sources:test tags:1\"\n },\n {\n \"q\":\"sources:test tags:2\"\n }\n ],\n \"markers\":[\n {\n \"label\":\" z=6 \",\n \"value\":\"y = 4\",\n \"display_type\":\"error dashed\"\n },\n {\n \"label\":\" x=8 \",\n \"value\":\"10 \u003c y \u003c 999\",\n \"display_type\":\"ok solid\"\n }\n ]\n }\n },\n {\n \"id\":7307171374656551,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"toplist\",\n \"requests\":[\n {\n \"q\":\"avg:system.cpu.user{app:general} by {env}\",\n \"conditional_formats\":[\n {\n \"hide_value\":false,\n \"comparator\":\"\u003c\",\n \"palette\":\"white_on_green\",\n \"value\":2\n },\n {\n \"hide_value\":false,\n \"comparator\":\"\u003e\",\n \"palette\":\"white_on_red\",\n \"value\":2.2\n }\n ]\n }\n ]\n }\n },\n {\n \"id\":7086674838553258,\n \"definition\":{\n \"title\":\"Group Widget\",\n \"type\":\"group\",\n \"layout_type\":\"ordered\",\n \"widgets\":[\n {\n \"id\":3726092277657502,\n \"definition\":{\n \"type\":\"note\",\n \"content\":\"cluster note widget\",\n \"background_color\":\"pink\",\n \"font_size\":\"14\",\n \"text_align\":\"center\",\n \"show_tick\":true,\n \"tick_pos\":\"50%\",\n \"tick_edge\":\"left\"\n }\n },\n {\n \"id\":6376384650558057,\n \"definition\":{\n \"title\":\"Alert Graph\",\n \"type\":\"alert_graph\",\n \"alert_id\":\"123\",\n \"viz_type\":\"toplist\"\n }\n }\n ]\n }\n },\n {\n \"id\":4668903563678912,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"slo\",\n \"view_type\":\"detail\",\n \"time_windows\":[\n \"7d\",\n \"previous_week\"\n ],\n \"slo_id\":\"56789\",\n \"show_error_budget\":true,\n \"view_mode\":\"overall\",\n \"global_time_target\":\"0\"\n }\n }\n ],\n \"template_variables\":[\n {\n \"name\":\"var_1\",\n \"default\":\"aws\",\n \"prefix\":\"host\"\n },\n {\n \"name\":\"var_2\",\n \"default\":\"autoscaling\",\n \"prefix\":\"service_name\"\n }\n ],\n \"layout_type\":\"ordered\",\n \"is_read_only\":true,\n \"notify_list\":[\n\n ],\n \"template_variable_presets\":[\n {\n \"name\":\"preset_1\",\n \"template_variables\":[\n {\n \"name\":\"var_1\",\n \"value\":\"host.dc\"\n },\n {\n \"name\":\"var_2\",\n \"value\":\"my_service\"\n }\n ]\n }\n ]\n}\n\n`),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.DashboardJson;\nimport com.pulumi.datadog.DashboardJsonArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var dashboardJson = new DashboardJson(\"dashboardJson\", DashboardJsonArgs.builder() \n .dashboard(\"\"\"\n{\n \"title\":\"Ordered Layout Dashboard\",\n \"description\":\"Created using the Datadog provider in Terraform\",\n \"widgets\":[\n {\n \"id\":719369537777170,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"alert_graph\",\n \"alert_id\":\"895605\",\n \"viz_type\":\"timeseries\"\n }\n },\n {\n \"id\":2306240030393868,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"alert_value\",\n \"alert_id\":\"895605\",\n \"unit\":\"b\",\n \"text_align\":\"center\",\n \"precision\":3\n }\n },\n {\n \"id\":6990998850881326,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"alert_value\",\n \"alert_id\":\"895605\",\n \"unit\":\"b\",\n \"text_align\":\"center\",\n \"precision\":3\n }\n },\n {\n \"id\":3351284044659007,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"change\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"compare_to\":\"week_before\",\n \"change_type\":\"absolute\",\n \"order_dir\":\"desc\",\n \"increase_good\":true,\n \"order_by\":\"name\",\n \"show_present\":true\n }\n ]\n }\n },\n {\n \"id\":6450290622996182,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"show_legend\":false,\n \"type\":\"distribution\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"style\":{\n \"palette\":\"warm\"\n }\n }\n ]\n }\n },\n {\n \"id\":4902842646291536,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"check_status\",\n \"check\":\"aws.ecs.agent_connected\",\n \"grouping\":\"cluster\",\n \"group_by\":[\n \"account\",\n \"cluster\"\n ],\n \"tags\":[\n \"account:demo\",\n \"cluster:awseb-ruthebdog-env-8-dn3m6u3gvk\"\n ]\n }\n },\n {\n \"id\":6392349954822644,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"show_legend\":false,\n \"type\":\"heatmap\",\n \"yaxis\":{\n \"scale\":\"sqrt\",\n \"include_zero\":true,\n \"min\":\"1\",\n \"max\":\"2\"\n },\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"style\":{\n \"palette\":\"warm\"\n }\n }\n ]\n }\n },\n {\n \"id\":5222961478940988,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"hostmap\",\n \"requests\":{\n \"fill\":{\n \"q\":\"avg:system.load.1{*} by {host}\"\n },\n \"size\":{\n \"q\":\"avg:memcache.uptime{*} by {host}\"\n }\n },\n \"node_type\":\"container\",\n \"no_metric_hosts\":true,\n \"no_group_hosts\":true,\n \"group\":[\n \"host\",\n \"region\"\n ],\n \"scope\":[\n \"region:us-east-1\",\n \"aws_account:727006795293\"\n ],\n \"style\":{\n \"palette\":\"yellow_to_green\",\n \"palette_flip\":true,\n \"fill_min\":\"10\",\n \"fill_max\":\"20\"\n }\n }\n },\n {\n \"id\":8121199734227072,\n \"definition\":{\n \"type\":\"note\",\n \"content\":\"note text\",\n \"background_color\":\"pink\",\n \"font_size\":\"14\",\n \"text_align\":\"center\",\n \"show_tick\":true,\n \"tick_pos\":\"50%\",\n \"tick_edge\":\"left\"\n }\n },\n {\n \"id\":1775856835833038,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"query_value\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"aggregator\":\"sum\",\n \"conditional_formats\":[\n {\n \"hide_value\":false,\n \"comparator\":\"\u003c\",\n \"palette\":\"white_on_green\",\n \"value\":2\n },\n {\n \"hide_value\":false,\n \"comparator\":\"\u003e\",\n \"palette\":\"white_on_red\",\n \"value\":2.2\n }\n ]\n }\n ],\n \"autoscale\":true,\n \"custom_unit\":\"xx\",\n \"text_align\":\"right\",\n \"precision\":4\n }\n },\n {\n \"id\":8461455966625581,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"query_table\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"aggregator\":\"sum\",\n \"conditional_formats\":[\n {\n \"hide_value\":false,\n \"comparator\":\"\u003c\",\n \"palette\":\"white_on_green\",\n \"value\":2\n },\n {\n \"hide_value\":false,\n \"comparator\":\"\u003e\",\n \"palette\":\"white_on_red\",\n \"value\":2.2\n }\n ],\n \"limit\":10\n }\n ]\n }\n },\n {\n \"id\":8660006349418736,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"scatterplot\",\n \"requests\":{\n \"x\":{\n \"q\":\"avg:system.cpu.user{*} by {service, account}\",\n \"aggregator\":\"max\"\n },\n \"y\":{\n \"q\":\"avg:system.mem.used{*} by {service, account}\",\n \"aggregator\":\"min\"\n }\n },\n \"xaxis\":{\n \"scale\":\"pow\",\n \"label\":\"x\",\n \"include_zero\":true,\n \"min\":\"1\",\n \"max\":\"2000\"\n },\n \"yaxis\":{\n \"scale\":\"log\",\n \"label\":\"y\",\n \"include_zero\":false,\n \"min\":\"5\",\n \"max\":\"2222\"\n },\n \"color_by_groups\":[\n \"account\",\n \"apm-role-group\"\n ]\n }\n },\n {\n \"id\":1669590772917638,\n \"definition\":{\n \"title\":\"env: prod, datacenter:dc1, service: master-db\",\n \"title_size\":\"16\",\n \"title_align\":\"left\",\n \"type\":\"servicemap\",\n \"service\":\"master-db\",\n \"filters\":[\n \"env:prod\",\n \"datacenter:dc1\"\n ]\n }\n },\n {\n \"id\":2138829058361817,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"show_legend\":true,\n \"legend_size\":\"2\",\n \"type\":\"timeseries\",\n \"requests\":[\n {\n \"q\":\"avg:system.cpu.user{app:general} by {env}\",\n \"on_right_yaxis\":false,\n \"metadata\":[\n {\n \"expression\":\"avg:system.cpu.user{app:general} by {env}\",\n \"alias_name\":\"Alpha\"\n }\n ],\n \"style\":{\n \"palette\":\"warm\",\n \"line_type\":\"dashed\",\n \"line_width\":\"thin\"\n },\n \"display_type\":\"line\"\n },\n {\n \"on_right_yaxis\":false,\n \"log_query\":{\n \"index\":\"mcnulty\",\n \"search\":{\n \"query\":\"status:info\"\n },\n \"group_by\":[\n {\n \"facet\":\"host\",\n \"sort\":{\n \"facet\":\"@duration\",\n \"aggregation\":\"avg\",\n \"order\":\"desc\"\n },\n \"limit\":10\n }\n ],\n \"compute\":{\n \"facet\":\"@duration\",\n \"interval\":5000,\n \"aggregation\":\"avg\"\n }\n },\n \"display_type\":\"area\"\n },\n {\n \"on_right_yaxis\":false,\n \"apm_query\":{\n \"index\":\"apm-search\",\n \"search\":{\n \"query\":\"type:web\"\n },\n \"group_by\":[\n {\n \"facet\":\"resource_name\",\n \"sort\":{\n \"facet\":\"@string_query.interval\",\n \"aggregation\":\"avg\",\n \"order\":\"desc\"\n },\n \"limit\":50\n }\n ],\n \"compute\":{\n \"facet\":\"@duration\",\n \"interval\":5000,\n \"aggregation\":\"avg\"\n }\n },\n \"display_type\":\"bars\"\n },\n {\n \"on_right_yaxis\":false,\n \"process_query\":{\n \"search_by\":\"error\",\n \"metric\":\"process.stat.cpu.total_pct\",\n \"limit\":50,\n \"filter_by\":[\n \"active\"\n ]\n },\n \"display_type\":\"area\"\n }\n ],\n \"yaxis\":{\n \"scale\":\"log\",\n \"include_zero\":false,\n \"max\":\"100\"\n },\n \"events\":[\n {\n \"q\":\"sources:test tags:1\"\n },\n {\n \"q\":\"sources:test tags:2\"\n }\n ],\n \"markers\":[\n {\n \"label\":\" z=6 \",\n \"value\":\"y = 4\",\n \"display_type\":\"error dashed\"\n },\n {\n \"label\":\" x=8 \",\n \"value\":\"10 \u003c y \u003c 999\",\n \"display_type\":\"ok solid\"\n }\n ]\n }\n },\n {\n \"id\":7307171374656551,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"toplist\",\n \"requests\":[\n {\n \"q\":\"avg:system.cpu.user{app:general} by {env}\",\n \"conditional_formats\":[\n {\n \"hide_value\":false,\n \"comparator\":\"\u003c\",\n \"palette\":\"white_on_green\",\n \"value\":2\n },\n {\n \"hide_value\":false,\n \"comparator\":\"\u003e\",\n \"palette\":\"white_on_red\",\n \"value\":2.2\n }\n ]\n }\n ]\n }\n },\n {\n \"id\":7086674838553258,\n \"definition\":{\n \"title\":\"Group Widget\",\n \"type\":\"group\",\n \"layout_type\":\"ordered\",\n \"widgets\":[\n {\n \"id\":3726092277657502,\n \"definition\":{\n \"type\":\"note\",\n \"content\":\"cluster note widget\",\n \"background_color\":\"pink\",\n \"font_size\":\"14\",\n \"text_align\":\"center\",\n \"show_tick\":true,\n \"tick_pos\":\"50%\",\n \"tick_edge\":\"left\"\n }\n },\n {\n \"id\":6376384650558057,\n \"definition\":{\n \"title\":\"Alert Graph\",\n \"type\":\"alert_graph\",\n \"alert_id\":\"123\",\n \"viz_type\":\"toplist\"\n }\n }\n ]\n }\n },\n {\n \"id\":4668903563678912,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"slo\",\n \"view_type\":\"detail\",\n \"time_windows\":[\n \"7d\",\n \"previous_week\"\n ],\n \"slo_id\":\"56789\",\n \"show_error_budget\":true,\n \"view_mode\":\"overall\",\n \"global_time_target\":\"0\"\n }\n }\n ],\n \"template_variables\":[\n {\n \"name\":\"var_1\",\n \"default\":\"aws\",\n \"prefix\":\"host\"\n },\n {\n \"name\":\"var_2\",\n \"default\":\"autoscaling\",\n \"prefix\":\"service_name\"\n }\n ],\n \"layout_type\":\"ordered\",\n \"is_read_only\":true,\n \"notify_list\":[\n\n ],\n \"template_variable_presets\":[\n {\n \"name\":\"preset_1\",\n \"template_variables\":[\n {\n \"name\":\"var_1\",\n \"value\":\"host.dc\"\n },\n {\n \"name\":\"var_2\",\n \"value\":\"my_service\"\n }\n ]\n }\n ]\n}\n\n \"\"\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Example Dashboard JSON\n dashboardJson:\n type: datadog:DashboardJson\n properties:\n dashboard: |+\n {\n \"title\":\"Ordered Layout Dashboard\",\n \"description\":\"Created using the Datadog provider in Terraform\",\n \"widgets\":[\n {\n \"id\":719369537777170,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"alert_graph\",\n \"alert_id\":\"895605\",\n \"viz_type\":\"timeseries\"\n }\n },\n {\n \"id\":2306240030393868,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"alert_value\",\n \"alert_id\":\"895605\",\n \"unit\":\"b\",\n \"text_align\":\"center\",\n \"precision\":3\n }\n },\n {\n \"id\":6990998850881326,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"alert_value\",\n \"alert_id\":\"895605\",\n \"unit\":\"b\",\n \"text_align\":\"center\",\n \"precision\":3\n }\n },\n {\n \"id\":3351284044659007,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"change\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"compare_to\":\"week_before\",\n \"change_type\":\"absolute\",\n \"order_dir\":\"desc\",\n \"increase_good\":true,\n \"order_by\":\"name\",\n \"show_present\":true\n }\n ]\n }\n },\n {\n \"id\":6450290622996182,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"show_legend\":false,\n \"type\":\"distribution\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"style\":{\n \"palette\":\"warm\"\n }\n }\n ]\n }\n },\n {\n \"id\":4902842646291536,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"check_status\",\n \"check\":\"aws.ecs.agent_connected\",\n \"grouping\":\"cluster\",\n \"group_by\":[\n \"account\",\n \"cluster\"\n ],\n \"tags\":[\n \"account:demo\",\n \"cluster:awseb-ruthebdog-env-8-dn3m6u3gvk\"\n ]\n }\n },\n {\n \"id\":6392349954822644,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"show_legend\":false,\n \"type\":\"heatmap\",\n \"yaxis\":{\n \"scale\":\"sqrt\",\n \"include_zero\":true,\n \"min\":\"1\",\n \"max\":\"2\"\n },\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"style\":{\n \"palette\":\"warm\"\n }\n }\n ]\n }\n },\n {\n \"id\":5222961478940988,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"hostmap\",\n \"requests\":{\n \"fill\":{\n \"q\":\"avg:system.load.1{*} by {host}\"\n },\n \"size\":{\n \"q\":\"avg:memcache.uptime{*} by {host}\"\n }\n },\n \"node_type\":\"container\",\n \"no_metric_hosts\":true,\n \"no_group_hosts\":true,\n \"group\":[\n \"host\",\n \"region\"\n ],\n \"scope\":[\n \"region:us-east-1\",\n \"aws_account:727006795293\"\n ],\n \"style\":{\n \"palette\":\"yellow_to_green\",\n \"palette_flip\":true,\n \"fill_min\":\"10\",\n \"fill_max\":\"20\"\n }\n }\n },\n {\n \"id\":8121199734227072,\n \"definition\":{\n \"type\":\"note\",\n \"content\":\"note text\",\n \"background_color\":\"pink\",\n \"font_size\":\"14\",\n \"text_align\":\"center\",\n \"show_tick\":true,\n \"tick_pos\":\"50%\",\n \"tick_edge\":\"left\"\n }\n },\n {\n \"id\":1775856835833038,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"query_value\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"aggregator\":\"sum\",\n \"conditional_formats\":[\n {\n \"hide_value\":false,\n \"comparator\":\"\u003c\",\n \"palette\":\"white_on_green\",\n \"value\":2\n },\n {\n \"hide_value\":false,\n \"comparator\":\"\u003e\",\n \"palette\":\"white_on_red\",\n \"value\":2.2\n }\n ]\n }\n ],\n \"autoscale\":true,\n \"custom_unit\":\"xx\",\n \"text_align\":\"right\",\n \"precision\":4\n }\n },\n {\n \"id\":8461455966625581,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"query_table\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"aggregator\":\"sum\",\n \"conditional_formats\":[\n {\n \"hide_value\":false,\n \"comparator\":\"\u003c\",\n \"palette\":\"white_on_green\",\n \"value\":2\n },\n {\n \"hide_value\":false,\n \"comparator\":\"\u003e\",\n \"palette\":\"white_on_red\",\n \"value\":2.2\n }\n ],\n \"limit\":10\n }\n ]\n }\n },\n {\n \"id\":8660006349418736,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"scatterplot\",\n \"requests\":{\n \"x\":{\n \"q\":\"avg:system.cpu.user{*} by {service, account}\",\n \"aggregator\":\"max\"\n },\n \"y\":{\n \"q\":\"avg:system.mem.used{*} by {service, account}\",\n \"aggregator\":\"min\"\n }\n },\n \"xaxis\":{\n \"scale\":\"pow\",\n \"label\":\"x\",\n \"include_zero\":true,\n \"min\":\"1\",\n \"max\":\"2000\"\n },\n \"yaxis\":{\n \"scale\":\"log\",\n \"label\":\"y\",\n \"include_zero\":false,\n \"min\":\"5\",\n \"max\":\"2222\"\n },\n \"color_by_groups\":[\n \"account\",\n \"apm-role-group\"\n ]\n }\n },\n {\n \"id\":1669590772917638,\n \"definition\":{\n \"title\":\"env: prod, datacenter:dc1, service: master-db\",\n \"title_size\":\"16\",\n \"title_align\":\"left\",\n \"type\":\"servicemap\",\n \"service\":\"master-db\",\n \"filters\":[\n \"env:prod\",\n \"datacenter:dc1\"\n ]\n }\n },\n {\n \"id\":2138829058361817,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"show_legend\":true,\n \"legend_size\":\"2\",\n \"type\":\"timeseries\",\n \"requests\":[\n {\n \"q\":\"avg:system.cpu.user{app:general} by {env}\",\n \"on_right_yaxis\":false,\n \"metadata\":[\n {\n \"expression\":\"avg:system.cpu.user{app:general} by {env}\",\n \"alias_name\":\"Alpha\"\n }\n ],\n \"style\":{\n \"palette\":\"warm\",\n \"line_type\":\"dashed\",\n \"line_width\":\"thin\"\n },\n \"display_type\":\"line\"\n },\n {\n \"on_right_yaxis\":false,\n \"log_query\":{\n \"index\":\"mcnulty\",\n \"search\":{\n \"query\":\"status:info\"\n },\n \"group_by\":[\n {\n \"facet\":\"host\",\n \"sort\":{\n \"facet\":\"@duration\",\n \"aggregation\":\"avg\",\n \"order\":\"desc\"\n },\n \"limit\":10\n }\n ],\n \"compute\":{\n \"facet\":\"@duration\",\n \"interval\":5000,\n \"aggregation\":\"avg\"\n }\n },\n \"display_type\":\"area\"\n },\n {\n \"on_right_yaxis\":false,\n \"apm_query\":{\n \"index\":\"apm-search\",\n \"search\":{\n \"query\":\"type:web\"\n },\n \"group_by\":[\n {\n \"facet\":\"resource_name\",\n \"sort\":{\n \"facet\":\"@string_query.interval\",\n \"aggregation\":\"avg\",\n \"order\":\"desc\"\n },\n \"limit\":50\n }\n ],\n \"compute\":{\n \"facet\":\"@duration\",\n \"interval\":5000,\n \"aggregation\":\"avg\"\n }\n },\n \"display_type\":\"bars\"\n },\n {\n \"on_right_yaxis\":false,\n \"process_query\":{\n \"search_by\":\"error\",\n \"metric\":\"process.stat.cpu.total_pct\",\n \"limit\":50,\n \"filter_by\":[\n \"active\"\n ]\n },\n \"display_type\":\"area\"\n }\n ],\n \"yaxis\":{\n \"scale\":\"log\",\n \"include_zero\":false,\n \"max\":\"100\"\n },\n \"events\":[\n {\n \"q\":\"sources:test tags:1\"\n },\n {\n \"q\":\"sources:test tags:2\"\n }\n ],\n \"markers\":[\n {\n \"label\":\" z=6 \",\n \"value\":\"y = 4\",\n \"display_type\":\"error dashed\"\n },\n {\n \"label\":\" x=8 \",\n \"value\":\"10 \u003c y \u003c 999\",\n \"display_type\":\"ok solid\"\n }\n ]\n }\n },\n {\n \"id\":7307171374656551,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"toplist\",\n \"requests\":[\n {\n \"q\":\"avg:system.cpu.user{app:general} by {env}\",\n \"conditional_formats\":[\n {\n \"hide_value\":false,\n \"comparator\":\"\u003c\",\n \"palette\":\"white_on_green\",\n \"value\":2\n },\n {\n \"hide_value\":false,\n \"comparator\":\"\u003e\",\n \"palette\":\"white_on_red\",\n \"value\":2.2\n }\n ]\n }\n ]\n }\n },\n {\n \"id\":7086674838553258,\n \"definition\":{\n \"title\":\"Group Widget\",\n \"type\":\"group\",\n \"layout_type\":\"ordered\",\n \"widgets\":[\n {\n \"id\":3726092277657502,\n \"definition\":{\n \"type\":\"note\",\n \"content\":\"cluster note widget\",\n \"background_color\":\"pink\",\n \"font_size\":\"14\",\n \"text_align\":\"center\",\n \"show_tick\":true,\n \"tick_pos\":\"50%\",\n \"tick_edge\":\"left\"\n }\n },\n {\n \"id\":6376384650558057,\n \"definition\":{\n \"title\":\"Alert Graph\",\n \"type\":\"alert_graph\",\n \"alert_id\":\"123\",\n \"viz_type\":\"toplist\"\n }\n }\n ]\n }\n },\n {\n \"id\":4668903563678912,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"slo\",\n \"view_type\":\"detail\",\n \"time_windows\":[\n \"7d\",\n \"previous_week\"\n ],\n \"slo_id\":\"56789\",\n \"show_error_budget\":true,\n \"view_mode\":\"overall\",\n \"global_time_target\":\"0\"\n }\n }\n ],\n \"template_variables\":[\n {\n \"name\":\"var_1\",\n \"default\":\"aws\",\n \"prefix\":\"host\"\n },\n {\n \"name\":\"var_2\",\n \"default\":\"autoscaling\",\n \"prefix\":\"service_name\"\n }\n ],\n \"layout_type\":\"ordered\",\n \"is_read_only\":true,\n \"notify_list\":[\n\n ],\n \"template_variable_presets\":[\n {\n \"name\":\"preset_1\",\n \"template_variables\":[\n {\n \"name\":\"var_1\",\n \"value\":\"host.dc\"\n },\n {\n \"name\":\"var_2\",\n \"value\":\"my_service\"\n }\n ]\n }\n ]\n }\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\n\n\n```sh\n $ pulumi import datadog:index/dashboardJson:DashboardJson my_service_dashboard sv7-gyh-kas\n```\n\n ", + "description": "Provides a Datadog dashboard JSON resource. This can be used to create and manage Datadog dashboards using the JSON definition.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Example Dashboard JSON\nconst dashboardJson = new datadog.DashboardJson(\"dashboardJson\", {dashboard: `{\n \"title\":\"Ordered Layout Dashboard\",\n \"description\":\"Created using the Datadog provider in Pulumi\",\n \"widgets\":[\n {\n \"id\":719369537777170,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"alert_graph\",\n \"alert_id\":\"895605\",\n \"viz_type\":\"timeseries\"\n }\n },\n {\n \"id\":2306240030393868,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"alert_value\",\n \"alert_id\":\"895605\",\n \"unit\":\"b\",\n \"text_align\":\"center\",\n \"precision\":3\n }\n },\n {\n \"id\":6990998850881326,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"alert_value\",\n \"alert_id\":\"895605\",\n \"unit\":\"b\",\n \"text_align\":\"center\",\n \"precision\":3\n }\n },\n {\n \"id\":3351284044659007,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"change\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"compare_to\":\"week_before\",\n \"change_type\":\"absolute\",\n \"order_dir\":\"desc\",\n \"increase_good\":true,\n \"order_by\":\"name\",\n \"show_present\":true\n }\n ]\n }\n },\n {\n \"id\":6450290622996182,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"show_legend\":false,\n \"type\":\"distribution\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"style\":{\n \"palette\":\"warm\"\n }\n }\n ]\n }\n },\n {\n \"id\":4902842646291536,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"check_status\",\n \"check\":\"aws.ecs.agent_connected\",\n \"grouping\":\"cluster\",\n \"group_by\":[\n \"account\",\n \"cluster\"\n ],\n \"tags\":[\n \"account:demo\",\n \"cluster:awseb-ruthebdog-env-8-dn3m6u3gvk\"\n ]\n }\n },\n {\n \"id\":6392349954822644,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"show_legend\":false,\n \"type\":\"heatmap\",\n \"yaxis\":{\n \"scale\":\"sqrt\",\n \"include_zero\":true,\n \"min\":\"1\",\n \"max\":\"2\"\n },\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"style\":{\n \"palette\":\"warm\"\n }\n }\n ]\n }\n },\n {\n \"id\":5222961478940988,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"hostmap\",\n \"requests\":{\n \"fill\":{\n \"q\":\"avg:system.load.1{*} by {host}\"\n },\n \"size\":{\n \"q\":\"avg:memcache.uptime{*} by {host}\"\n }\n },\n \"node_type\":\"container\",\n \"no_metric_hosts\":true,\n \"no_group_hosts\":true,\n \"group\":[\n \"host\",\n \"region\"\n ],\n \"scope\":[\n \"region:us-east-1\",\n \"aws_account:727006795293\"\n ],\n \"style\":{\n \"palette\":\"yellow_to_green\",\n \"palette_flip\":true,\n \"fill_min\":\"10\",\n \"fill_max\":\"20\"\n }\n }\n },\n {\n \"id\":8121199734227072,\n \"definition\":{\n \"type\":\"note\",\n \"content\":\"note text\",\n \"background_color\":\"pink\",\n \"font_size\":\"14\",\n \"text_align\":\"center\",\n \"show_tick\":true,\n \"tick_pos\":\"50%\",\n \"tick_edge\":\"left\"\n }\n },\n {\n \"id\":1775856835833038,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"query_value\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"aggregator\":\"sum\",\n \"conditional_formats\":[\n {\n \"hide_value\":false,\n \"comparator\":\"\u003c\",\n \"palette\":\"white_on_green\",\n \"value\":2\n },\n {\n \"hide_value\":false,\n \"comparator\":\"\u003e\",\n \"palette\":\"white_on_red\",\n \"value\":2.2\n }\n ]\n }\n ],\n \"autoscale\":true,\n \"custom_unit\":\"xx\",\n \"text_align\":\"right\",\n \"precision\":4\n }\n },\n {\n \"id\":8461455966625581,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"query_table\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"aggregator\":\"sum\",\n \"conditional_formats\":[\n {\n \"hide_value\":false,\n \"comparator\":\"\u003c\",\n \"palette\":\"white_on_green\",\n \"value\":2\n },\n {\n \"hide_value\":false,\n \"comparator\":\"\u003e\",\n \"palette\":\"white_on_red\",\n \"value\":2.2\n }\n ],\n \"limit\":10\n }\n ]\n }\n },\n {\n \"id\":8660006349418736,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"scatterplot\",\n \"requests\":{\n \"x\":{\n \"q\":\"avg:system.cpu.user{*} by {service, account}\",\n \"aggregator\":\"max\"\n },\n \"y\":{\n \"q\":\"avg:system.mem.used{*} by {service, account}\",\n \"aggregator\":\"min\"\n }\n },\n \"xaxis\":{\n \"scale\":\"pow\",\n \"label\":\"x\",\n \"include_zero\":true,\n \"min\":\"1\",\n \"max\":\"2000\"\n },\n \"yaxis\":{\n \"scale\":\"log\",\n \"label\":\"y\",\n \"include_zero\":false,\n \"min\":\"5\",\n \"max\":\"2222\"\n },\n \"color_by_groups\":[\n \"account\",\n \"apm-role-group\"\n ]\n }\n },\n {\n \"id\":1669590772917638,\n \"definition\":{\n \"title\":\"env: prod, datacenter:dc1, service: master-db\",\n \"title_size\":\"16\",\n \"title_align\":\"left\",\n \"type\":\"servicemap\",\n \"service\":\"master-db\",\n \"filters\":[\n \"env:prod\",\n \"datacenter:dc1\"\n ]\n }\n },\n {\n \"id\":2138829058361817,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"show_legend\":true,\n \"legend_size\":\"2\",\n \"type\":\"timeseries\",\n \"requests\":[\n {\n \"q\":\"avg:system.cpu.user{app:general} by {env}\",\n \"on_right_yaxis\":false,\n \"metadata\":[\n {\n \"expression\":\"avg:system.cpu.user{app:general} by {env}\",\n \"alias_name\":\"Alpha\"\n }\n ],\n \"style\":{\n \"palette\":\"warm\",\n \"line_type\":\"dashed\",\n \"line_width\":\"thin\"\n },\n \"display_type\":\"line\"\n },\n {\n \"on_right_yaxis\":false,\n \"log_query\":{\n \"index\":\"mcnulty\",\n \"search\":{\n \"query\":\"status:info\"\n },\n \"group_by\":[\n {\n \"facet\":\"host\",\n \"sort\":{\n \"facet\":\"@duration\",\n \"aggregation\":\"avg\",\n \"order\":\"desc\"\n },\n \"limit\":10\n }\n ],\n \"compute\":{\n \"facet\":\"@duration\",\n \"interval\":5000,\n \"aggregation\":\"avg\"\n }\n },\n \"display_type\":\"area\"\n },\n {\n \"on_right_yaxis\":false,\n \"apm_query\":{\n \"index\":\"apm-search\",\n \"search\":{\n \"query\":\"type:web\"\n },\n \"group_by\":[\n {\n \"facet\":\"resource_name\",\n \"sort\":{\n \"facet\":\"@string_query.interval\",\n \"aggregation\":\"avg\",\n \"order\":\"desc\"\n },\n \"limit\":50\n }\n ],\n \"compute\":{\n \"facet\":\"@duration\",\n \"interval\":5000,\n \"aggregation\":\"avg\"\n }\n },\n \"display_type\":\"bars\"\n },\n {\n \"on_right_yaxis\":false,\n \"process_query\":{\n \"search_by\":\"error\",\n \"metric\":\"process.stat.cpu.total_pct\",\n \"limit\":50,\n \"filter_by\":[\n \"active\"\n ]\n },\n \"display_type\":\"area\"\n }\n ],\n \"yaxis\":{\n \"scale\":\"log\",\n \"include_zero\":false,\n \"max\":\"100\"\n },\n \"events\":[\n {\n \"q\":\"sources:test tags:1\"\n },\n {\n \"q\":\"sources:test tags:2\"\n }\n ],\n \"markers\":[\n {\n \"label\":\" z=6 \",\n \"value\":\"y = 4\",\n \"display_type\":\"error dashed\"\n },\n {\n \"label\":\" x=8 \",\n \"value\":\"10 \u003c y \u003c 999\",\n \"display_type\":\"ok solid\"\n }\n ]\n }\n },\n {\n \"id\":7307171374656551,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"toplist\",\n \"requests\":[\n {\n \"q\":\"avg:system.cpu.user{app:general} by {env}\",\n \"conditional_formats\":[\n {\n \"hide_value\":false,\n \"comparator\":\"\u003c\",\n \"palette\":\"white_on_green\",\n \"value\":2\n },\n {\n \"hide_value\":false,\n \"comparator\":\"\u003e\",\n \"palette\":\"white_on_red\",\n \"value\":2.2\n }\n ]\n }\n ]\n }\n },\n {\n \"id\":7086674838553258,\n \"definition\":{\n \"title\":\"Group Widget\",\n \"type\":\"group\",\n \"layout_type\":\"ordered\",\n \"widgets\":[\n {\n \"id\":3726092277657502,\n \"definition\":{\n \"type\":\"note\",\n \"content\":\"cluster note widget\",\n \"background_color\":\"pink\",\n \"font_size\":\"14\",\n \"text_align\":\"center\",\n \"show_tick\":true,\n \"tick_pos\":\"50%\",\n \"tick_edge\":\"left\"\n }\n },\n {\n \"id\":6376384650558057,\n \"definition\":{\n \"title\":\"Alert Graph\",\n \"type\":\"alert_graph\",\n \"alert_id\":\"123\",\n \"viz_type\":\"toplist\"\n }\n }\n ]\n }\n },\n {\n \"id\":4668903563678912,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"slo\",\n \"view_type\":\"detail\",\n \"time_windows\":[\n \"7d\",\n \"previous_week\"\n ],\n \"slo_id\":\"56789\",\n \"show_error_budget\":true,\n \"view_mode\":\"overall\",\n \"global_time_target\":\"0\"\n }\n }\n ],\n \"template_variables\":[\n {\n \"name\":\"var_1\",\n \"default\":\"aws\",\n \"prefix\":\"host\"\n },\n {\n \"name\":\"var_2\",\n \"default\":\"autoscaling\",\n \"prefix\":\"service_name\"\n }\n ],\n \"layout_type\":\"ordered\",\n \"is_read_only\":true,\n \"notify_list\":[\n\n ],\n \"template_variable_presets\":[\n {\n \"name\":\"preset_1\",\n \"template_variables\":[\n {\n \"name\":\"var_1\",\n \"value\":\"host.dc\"\n },\n {\n \"name\":\"var_2\",\n \"value\":\"my_service\"\n }\n ]\n }\n ]\n}\n\n`});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Example Dashboard JSON\ndashboard_json = datadog.DashboardJson(\"dashboardJson\", dashboard=\"\"\"{\n \"title\":\"Ordered Layout Dashboard\",\n \"description\":\"Created using the Datadog provider in Pulumi\",\n \"widgets\":[\n {\n \"id\":719369537777170,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"alert_graph\",\n \"alert_id\":\"895605\",\n \"viz_type\":\"timeseries\"\n }\n },\n {\n \"id\":2306240030393868,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"alert_value\",\n \"alert_id\":\"895605\",\n \"unit\":\"b\",\n \"text_align\":\"center\",\n \"precision\":3\n }\n },\n {\n \"id\":6990998850881326,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"alert_value\",\n \"alert_id\":\"895605\",\n \"unit\":\"b\",\n \"text_align\":\"center\",\n \"precision\":3\n }\n },\n {\n \"id\":3351284044659007,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"change\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"compare_to\":\"week_before\",\n \"change_type\":\"absolute\",\n \"order_dir\":\"desc\",\n \"increase_good\":true,\n \"order_by\":\"name\",\n \"show_present\":true\n }\n ]\n }\n },\n {\n \"id\":6450290622996182,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"show_legend\":false,\n \"type\":\"distribution\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"style\":{\n \"palette\":\"warm\"\n }\n }\n ]\n }\n },\n {\n \"id\":4902842646291536,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"check_status\",\n \"check\":\"aws.ecs.agent_connected\",\n \"grouping\":\"cluster\",\n \"group_by\":[\n \"account\",\n \"cluster\"\n ],\n \"tags\":[\n \"account:demo\",\n \"cluster:awseb-ruthebdog-env-8-dn3m6u3gvk\"\n ]\n }\n },\n {\n \"id\":6392349954822644,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"show_legend\":false,\n \"type\":\"heatmap\",\n \"yaxis\":{\n \"scale\":\"sqrt\",\n \"include_zero\":true,\n \"min\":\"1\",\n \"max\":\"2\"\n },\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"style\":{\n \"palette\":\"warm\"\n }\n }\n ]\n }\n },\n {\n \"id\":5222961478940988,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"hostmap\",\n \"requests\":{\n \"fill\":{\n \"q\":\"avg:system.load.1{*} by {host}\"\n },\n \"size\":{\n \"q\":\"avg:memcache.uptime{*} by {host}\"\n }\n },\n \"node_type\":\"container\",\n \"no_metric_hosts\":true,\n \"no_group_hosts\":true,\n \"group\":[\n \"host\",\n \"region\"\n ],\n \"scope\":[\n \"region:us-east-1\",\n \"aws_account:727006795293\"\n ],\n \"style\":{\n \"palette\":\"yellow_to_green\",\n \"palette_flip\":true,\n \"fill_min\":\"10\",\n \"fill_max\":\"20\"\n }\n }\n },\n {\n \"id\":8121199734227072,\n \"definition\":{\n \"type\":\"note\",\n \"content\":\"note text\",\n \"background_color\":\"pink\",\n \"font_size\":\"14\",\n \"text_align\":\"center\",\n \"show_tick\":true,\n \"tick_pos\":\"50%\",\n \"tick_edge\":\"left\"\n }\n },\n {\n \"id\":1775856835833038,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"query_value\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"aggregator\":\"sum\",\n \"conditional_formats\":[\n {\n \"hide_value\":false,\n \"comparator\":\"\u003c\",\n \"palette\":\"white_on_green\",\n \"value\":2\n },\n {\n \"hide_value\":false,\n \"comparator\":\"\u003e\",\n \"palette\":\"white_on_red\",\n \"value\":2.2\n }\n ]\n }\n ],\n \"autoscale\":true,\n \"custom_unit\":\"xx\",\n \"text_align\":\"right\",\n \"precision\":4\n }\n },\n {\n \"id\":8461455966625581,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"query_table\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"aggregator\":\"sum\",\n \"conditional_formats\":[\n {\n \"hide_value\":false,\n \"comparator\":\"\u003c\",\n \"palette\":\"white_on_green\",\n \"value\":2\n },\n {\n \"hide_value\":false,\n \"comparator\":\"\u003e\",\n \"palette\":\"white_on_red\",\n \"value\":2.2\n }\n ],\n \"limit\":10\n }\n ]\n }\n },\n {\n \"id\":8660006349418736,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"scatterplot\",\n \"requests\":{\n \"x\":{\n \"q\":\"avg:system.cpu.user{*} by {service, account}\",\n \"aggregator\":\"max\"\n },\n \"y\":{\n \"q\":\"avg:system.mem.used{*} by {service, account}\",\n \"aggregator\":\"min\"\n }\n },\n \"xaxis\":{\n \"scale\":\"pow\",\n \"label\":\"x\",\n \"include_zero\":true,\n \"min\":\"1\",\n \"max\":\"2000\"\n },\n \"yaxis\":{\n \"scale\":\"log\",\n \"label\":\"y\",\n \"include_zero\":false,\n \"min\":\"5\",\n \"max\":\"2222\"\n },\n \"color_by_groups\":[\n \"account\",\n \"apm-role-group\"\n ]\n }\n },\n {\n \"id\":1669590772917638,\n \"definition\":{\n \"title\":\"env: prod, datacenter:dc1, service: master-db\",\n \"title_size\":\"16\",\n \"title_align\":\"left\",\n \"type\":\"servicemap\",\n \"service\":\"master-db\",\n \"filters\":[\n \"env:prod\",\n \"datacenter:dc1\"\n ]\n }\n },\n {\n \"id\":2138829058361817,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"show_legend\":true,\n \"legend_size\":\"2\",\n \"type\":\"timeseries\",\n \"requests\":[\n {\n \"q\":\"avg:system.cpu.user{app:general} by {env}\",\n \"on_right_yaxis\":false,\n \"metadata\":[\n {\n \"expression\":\"avg:system.cpu.user{app:general} by {env}\",\n \"alias_name\":\"Alpha\"\n }\n ],\n \"style\":{\n \"palette\":\"warm\",\n \"line_type\":\"dashed\",\n \"line_width\":\"thin\"\n },\n \"display_type\":\"line\"\n },\n {\n \"on_right_yaxis\":false,\n \"log_query\":{\n \"index\":\"mcnulty\",\n \"search\":{\n \"query\":\"status:info\"\n },\n \"group_by\":[\n {\n \"facet\":\"host\",\n \"sort\":{\n \"facet\":\"@duration\",\n \"aggregation\":\"avg\",\n \"order\":\"desc\"\n },\n \"limit\":10\n }\n ],\n \"compute\":{\n \"facet\":\"@duration\",\n \"interval\":5000,\n \"aggregation\":\"avg\"\n }\n },\n \"display_type\":\"area\"\n },\n {\n \"on_right_yaxis\":false,\n \"apm_query\":{\n \"index\":\"apm-search\",\n \"search\":{\n \"query\":\"type:web\"\n },\n \"group_by\":[\n {\n \"facet\":\"resource_name\",\n \"sort\":{\n \"facet\":\"@string_query.interval\",\n \"aggregation\":\"avg\",\n \"order\":\"desc\"\n },\n \"limit\":50\n }\n ],\n \"compute\":{\n \"facet\":\"@duration\",\n \"interval\":5000,\n \"aggregation\":\"avg\"\n }\n },\n \"display_type\":\"bars\"\n },\n {\n \"on_right_yaxis\":false,\n \"process_query\":{\n \"search_by\":\"error\",\n \"metric\":\"process.stat.cpu.total_pct\",\n \"limit\":50,\n \"filter_by\":[\n \"active\"\n ]\n },\n \"display_type\":\"area\"\n }\n ],\n \"yaxis\":{\n \"scale\":\"log\",\n \"include_zero\":false,\n \"max\":\"100\"\n },\n \"events\":[\n {\n \"q\":\"sources:test tags:1\"\n },\n {\n \"q\":\"sources:test tags:2\"\n }\n ],\n \"markers\":[\n {\n \"label\":\" z=6 \",\n \"value\":\"y = 4\",\n \"display_type\":\"error dashed\"\n },\n {\n \"label\":\" x=8 \",\n \"value\":\"10 \u003c y \u003c 999\",\n \"display_type\":\"ok solid\"\n }\n ]\n }\n },\n {\n \"id\":7307171374656551,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"toplist\",\n \"requests\":[\n {\n \"q\":\"avg:system.cpu.user{app:general} by {env}\",\n \"conditional_formats\":[\n {\n \"hide_value\":false,\n \"comparator\":\"\u003c\",\n \"palette\":\"white_on_green\",\n \"value\":2\n },\n {\n \"hide_value\":false,\n \"comparator\":\"\u003e\",\n \"palette\":\"white_on_red\",\n \"value\":2.2\n }\n ]\n }\n ]\n }\n },\n {\n \"id\":7086674838553258,\n \"definition\":{\n \"title\":\"Group Widget\",\n \"type\":\"group\",\n \"layout_type\":\"ordered\",\n \"widgets\":[\n {\n \"id\":3726092277657502,\n \"definition\":{\n \"type\":\"note\",\n \"content\":\"cluster note widget\",\n \"background_color\":\"pink\",\n \"font_size\":\"14\",\n \"text_align\":\"center\",\n \"show_tick\":true,\n \"tick_pos\":\"50%\",\n \"tick_edge\":\"left\"\n }\n },\n {\n \"id\":6376384650558057,\n \"definition\":{\n \"title\":\"Alert Graph\",\n \"type\":\"alert_graph\",\n \"alert_id\":\"123\",\n \"viz_type\":\"toplist\"\n }\n }\n ]\n }\n },\n {\n \"id\":4668903563678912,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"slo\",\n \"view_type\":\"detail\",\n \"time_windows\":[\n \"7d\",\n \"previous_week\"\n ],\n \"slo_id\":\"56789\",\n \"show_error_budget\":true,\n \"view_mode\":\"overall\",\n \"global_time_target\":\"0\"\n }\n }\n ],\n \"template_variables\":[\n {\n \"name\":\"var_1\",\n \"default\":\"aws\",\n \"prefix\":\"host\"\n },\n {\n \"name\":\"var_2\",\n \"default\":\"autoscaling\",\n \"prefix\":\"service_name\"\n }\n ],\n \"layout_type\":\"ordered\",\n \"is_read_only\":true,\n \"notify_list\":[\n\n ],\n \"template_variable_presets\":[\n {\n \"name\":\"preset_1\",\n \"template_variables\":[\n {\n \"name\":\"var_1\",\n \"value\":\"host.dc\"\n },\n {\n \"name\":\"var_2\",\n \"value\":\"my_service\"\n }\n ]\n }\n ]\n}\n\n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Example Dashboard JSON\n var dashboardJson = new Datadog.DashboardJson(\"dashboardJson\", new()\n {\n Dashboard = @\"{\n \"\"title\"\":\"\"Ordered Layout Dashboard\"\",\n \"\"description\"\":\"\"Created using the Datadog provider in Pulumi\"\",\n \"\"widgets\"\":[\n {\n \"\"id\"\":719369537777170,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Widget Title\"\",\n \"\"type\"\":\"\"alert_graph\"\",\n \"\"alert_id\"\":\"\"895605\"\",\n \"\"viz_type\"\":\"\"timeseries\"\"\n }\n },\n {\n \"\"id\"\":2306240030393868,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Widget Title\"\",\n \"\"type\"\":\"\"alert_value\"\",\n \"\"alert_id\"\":\"\"895605\"\",\n \"\"unit\"\":\"\"b\"\",\n \"\"text_align\"\":\"\"center\"\",\n \"\"precision\"\":3\n }\n },\n {\n \"\"id\"\":6990998850881326,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Widget Title\"\",\n \"\"type\"\":\"\"alert_value\"\",\n \"\"alert_id\"\":\"\"895605\"\",\n \"\"unit\"\":\"\"b\"\",\n \"\"text_align\"\":\"\"center\"\",\n \"\"precision\"\":3\n }\n },\n {\n \"\"id\"\":3351284044659007,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Widget Title\"\",\n \"\"type\"\":\"\"change\"\",\n \"\"requests\"\":[\n {\n \"\"q\"\":\"\"avg:system.load.1{env:staging} by {account}\"\",\n \"\"compare_to\"\":\"\"week_before\"\",\n \"\"change_type\"\":\"\"absolute\"\",\n \"\"order_dir\"\":\"\"desc\"\",\n \"\"increase_good\"\":true,\n \"\"order_by\"\":\"\"name\"\",\n \"\"show_present\"\":true\n }\n ]\n }\n },\n {\n \"\"id\"\":6450290622996182,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Widget Title\"\",\n \"\"show_legend\"\":false,\n \"\"type\"\":\"\"distribution\"\",\n \"\"requests\"\":[\n {\n \"\"q\"\":\"\"avg:system.load.1{env:staging} by {account}\"\",\n \"\"style\"\":{\n \"\"palette\"\":\"\"warm\"\"\n }\n }\n ]\n }\n },\n {\n \"\"id\"\":4902842646291536,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Widget Title\"\",\n \"\"type\"\":\"\"check_status\"\",\n \"\"check\"\":\"\"aws.ecs.agent_connected\"\",\n \"\"grouping\"\":\"\"cluster\"\",\n \"\"group_by\"\":[\n \"\"account\"\",\n \"\"cluster\"\"\n ],\n \"\"tags\"\":[\n \"\"account:demo\"\",\n \"\"cluster:awseb-ruthebdog-env-8-dn3m6u3gvk\"\"\n ]\n }\n },\n {\n \"\"id\"\":6392349954822644,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Widget Title\"\",\n \"\"show_legend\"\":false,\n \"\"type\"\":\"\"heatmap\"\",\n \"\"yaxis\"\":{\n \"\"scale\"\":\"\"sqrt\"\",\n \"\"include_zero\"\":true,\n \"\"min\"\":\"\"1\"\",\n \"\"max\"\":\"\"2\"\"\n },\n \"\"requests\"\":[\n {\n \"\"q\"\":\"\"avg:system.load.1{env:staging} by {account}\"\",\n \"\"style\"\":{\n \"\"palette\"\":\"\"warm\"\"\n }\n }\n ]\n }\n },\n {\n \"\"id\"\":5222961478940988,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Widget Title\"\",\n \"\"type\"\":\"\"hostmap\"\",\n \"\"requests\"\":{\n \"\"fill\"\":{\n \"\"q\"\":\"\"avg:system.load.1{*} by {host}\"\"\n },\n \"\"size\"\":{\n \"\"q\"\":\"\"avg:memcache.uptime{*} by {host}\"\"\n }\n },\n \"\"node_type\"\":\"\"container\"\",\n \"\"no_metric_hosts\"\":true,\n \"\"no_group_hosts\"\":true,\n \"\"group\"\":[\n \"\"host\"\",\n \"\"region\"\"\n ],\n \"\"scope\"\":[\n \"\"region:us-east-1\"\",\n \"\"aws_account:727006795293\"\"\n ],\n \"\"style\"\":{\n \"\"palette\"\":\"\"yellow_to_green\"\",\n \"\"palette_flip\"\":true,\n \"\"fill_min\"\":\"\"10\"\",\n \"\"fill_max\"\":\"\"20\"\"\n }\n }\n },\n {\n \"\"id\"\":8121199734227072,\n \"\"definition\"\":{\n \"\"type\"\":\"\"note\"\",\n \"\"content\"\":\"\"note text\"\",\n \"\"background_color\"\":\"\"pink\"\",\n \"\"font_size\"\":\"\"14\"\",\n \"\"text_align\"\":\"\"center\"\",\n \"\"show_tick\"\":true,\n \"\"tick_pos\"\":\"\"50%\"\",\n \"\"tick_edge\"\":\"\"left\"\"\n }\n },\n {\n \"\"id\"\":1775856835833038,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Widget Title\"\",\n \"\"type\"\":\"\"query_value\"\",\n \"\"requests\"\":[\n {\n \"\"q\"\":\"\"avg:system.load.1{env:staging} by {account}\"\",\n \"\"aggregator\"\":\"\"sum\"\",\n \"\"conditional_formats\"\":[\n {\n \"\"hide_value\"\":false,\n \"\"comparator\"\":\"\"\u003c\"\",\n \"\"palette\"\":\"\"white_on_green\"\",\n \"\"value\"\":2\n },\n {\n \"\"hide_value\"\":false,\n \"\"comparator\"\":\"\"\u003e\"\",\n \"\"palette\"\":\"\"white_on_red\"\",\n \"\"value\"\":2.2\n }\n ]\n }\n ],\n \"\"autoscale\"\":true,\n \"\"custom_unit\"\":\"\"xx\"\",\n \"\"text_align\"\":\"\"right\"\",\n \"\"precision\"\":4\n }\n },\n {\n \"\"id\"\":8461455966625581,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Widget Title\"\",\n \"\"type\"\":\"\"query_table\"\",\n \"\"requests\"\":[\n {\n \"\"q\"\":\"\"avg:system.load.1{env:staging} by {account}\"\",\n \"\"aggregator\"\":\"\"sum\"\",\n \"\"conditional_formats\"\":[\n {\n \"\"hide_value\"\":false,\n \"\"comparator\"\":\"\"\u003c\"\",\n \"\"palette\"\":\"\"white_on_green\"\",\n \"\"value\"\":2\n },\n {\n \"\"hide_value\"\":false,\n \"\"comparator\"\":\"\"\u003e\"\",\n \"\"palette\"\":\"\"white_on_red\"\",\n \"\"value\"\":2.2\n }\n ],\n \"\"limit\"\":10\n }\n ]\n }\n },\n {\n \"\"id\"\":8660006349418736,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Widget Title\"\",\n \"\"type\"\":\"\"scatterplot\"\",\n \"\"requests\"\":{\n \"\"x\"\":{\n \"\"q\"\":\"\"avg:system.cpu.user{*} by {service, account}\"\",\n \"\"aggregator\"\":\"\"max\"\"\n },\n \"\"y\"\":{\n \"\"q\"\":\"\"avg:system.mem.used{*} by {service, account}\"\",\n \"\"aggregator\"\":\"\"min\"\"\n }\n },\n \"\"xaxis\"\":{\n \"\"scale\"\":\"\"pow\"\",\n \"\"label\"\":\"\"x\"\",\n \"\"include_zero\"\":true,\n \"\"min\"\":\"\"1\"\",\n \"\"max\"\":\"\"2000\"\"\n },\n \"\"yaxis\"\":{\n \"\"scale\"\":\"\"log\"\",\n \"\"label\"\":\"\"y\"\",\n \"\"include_zero\"\":false,\n \"\"min\"\":\"\"5\"\",\n \"\"max\"\":\"\"2222\"\"\n },\n \"\"color_by_groups\"\":[\n \"\"account\"\",\n \"\"apm-role-group\"\"\n ]\n }\n },\n {\n \"\"id\"\":1669590772917638,\n \"\"definition\"\":{\n \"\"title\"\":\"\"env: prod, datacenter:dc1, service: master-db\"\",\n \"\"title_size\"\":\"\"16\"\",\n \"\"title_align\"\":\"\"left\"\",\n \"\"type\"\":\"\"servicemap\"\",\n \"\"service\"\":\"\"master-db\"\",\n \"\"filters\"\":[\n \"\"env:prod\"\",\n \"\"datacenter:dc1\"\"\n ]\n }\n },\n {\n \"\"id\"\":2138829058361817,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Widget Title\"\",\n \"\"show_legend\"\":true,\n \"\"legend_size\"\":\"\"2\"\",\n \"\"type\"\":\"\"timeseries\"\",\n \"\"requests\"\":[\n {\n \"\"q\"\":\"\"avg:system.cpu.user{app:general} by {env}\"\",\n \"\"on_right_yaxis\"\":false,\n \"\"metadata\"\":[\n {\n \"\"expression\"\":\"\"avg:system.cpu.user{app:general} by {env}\"\",\n \"\"alias_name\"\":\"\"Alpha\"\"\n }\n ],\n \"\"style\"\":{\n \"\"palette\"\":\"\"warm\"\",\n \"\"line_type\"\":\"\"dashed\"\",\n \"\"line_width\"\":\"\"thin\"\"\n },\n \"\"display_type\"\":\"\"line\"\"\n },\n {\n \"\"on_right_yaxis\"\":false,\n \"\"log_query\"\":{\n \"\"index\"\":\"\"mcnulty\"\",\n \"\"search\"\":{\n \"\"query\"\":\"\"status:info\"\"\n },\n \"\"group_by\"\":[\n {\n \"\"facet\"\":\"\"host\"\",\n \"\"sort\"\":{\n \"\"facet\"\":\"\"@duration\"\",\n \"\"aggregation\"\":\"\"avg\"\",\n \"\"order\"\":\"\"desc\"\"\n },\n \"\"limit\"\":10\n }\n ],\n \"\"compute\"\":{\n \"\"facet\"\":\"\"@duration\"\",\n \"\"interval\"\":5000,\n \"\"aggregation\"\":\"\"avg\"\"\n }\n },\n \"\"display_type\"\":\"\"area\"\"\n },\n {\n \"\"on_right_yaxis\"\":false,\n \"\"apm_query\"\":{\n \"\"index\"\":\"\"apm-search\"\",\n \"\"search\"\":{\n \"\"query\"\":\"\"type:web\"\"\n },\n \"\"group_by\"\":[\n {\n \"\"facet\"\":\"\"resource_name\"\",\n \"\"sort\"\":{\n \"\"facet\"\":\"\"@string_query.interval\"\",\n \"\"aggregation\"\":\"\"avg\"\",\n \"\"order\"\":\"\"desc\"\"\n },\n \"\"limit\"\":50\n }\n ],\n \"\"compute\"\":{\n \"\"facet\"\":\"\"@duration\"\",\n \"\"interval\"\":5000,\n \"\"aggregation\"\":\"\"avg\"\"\n }\n },\n \"\"display_type\"\":\"\"bars\"\"\n },\n {\n \"\"on_right_yaxis\"\":false,\n \"\"process_query\"\":{\n \"\"search_by\"\":\"\"error\"\",\n \"\"metric\"\":\"\"process.stat.cpu.total_pct\"\",\n \"\"limit\"\":50,\n \"\"filter_by\"\":[\n \"\"active\"\"\n ]\n },\n \"\"display_type\"\":\"\"area\"\"\n }\n ],\n \"\"yaxis\"\":{\n \"\"scale\"\":\"\"log\"\",\n \"\"include_zero\"\":false,\n \"\"max\"\":\"\"100\"\"\n },\n \"\"events\"\":[\n {\n \"\"q\"\":\"\"sources:test tags:1\"\"\n },\n {\n \"\"q\"\":\"\"sources:test tags:2\"\"\n }\n ],\n \"\"markers\"\":[\n {\n \"\"label\"\":\"\" z=6 \"\",\n \"\"value\"\":\"\"y = 4\"\",\n \"\"display_type\"\":\"\"error dashed\"\"\n },\n {\n \"\"label\"\":\"\" x=8 \"\",\n \"\"value\"\":\"\"10 \u003c y \u003c 999\"\",\n \"\"display_type\"\":\"\"ok solid\"\"\n }\n ]\n }\n },\n {\n \"\"id\"\":7307171374656551,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Widget Title\"\",\n \"\"type\"\":\"\"toplist\"\",\n \"\"requests\"\":[\n {\n \"\"q\"\":\"\"avg:system.cpu.user{app:general} by {env}\"\",\n \"\"conditional_formats\"\":[\n {\n \"\"hide_value\"\":false,\n \"\"comparator\"\":\"\"\u003c\"\",\n \"\"palette\"\":\"\"white_on_green\"\",\n \"\"value\"\":2\n },\n {\n \"\"hide_value\"\":false,\n \"\"comparator\"\":\"\"\u003e\"\",\n \"\"palette\"\":\"\"white_on_red\"\",\n \"\"value\"\":2.2\n }\n ]\n }\n ]\n }\n },\n {\n \"\"id\"\":7086674838553258,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Group Widget\"\",\n \"\"type\"\":\"\"group\"\",\n \"\"layout_type\"\":\"\"ordered\"\",\n \"\"widgets\"\":[\n {\n \"\"id\"\":3726092277657502,\n \"\"definition\"\":{\n \"\"type\"\":\"\"note\"\",\n \"\"content\"\":\"\"cluster note widget\"\",\n \"\"background_color\"\":\"\"pink\"\",\n \"\"font_size\"\":\"\"14\"\",\n \"\"text_align\"\":\"\"center\"\",\n \"\"show_tick\"\":true,\n \"\"tick_pos\"\":\"\"50%\"\",\n \"\"tick_edge\"\":\"\"left\"\"\n }\n },\n {\n \"\"id\"\":6376384650558057,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Alert Graph\"\",\n \"\"type\"\":\"\"alert_graph\"\",\n \"\"alert_id\"\":\"\"123\"\",\n \"\"viz_type\"\":\"\"toplist\"\"\n }\n }\n ]\n }\n },\n {\n \"\"id\"\":4668903563678912,\n \"\"definition\"\":{\n \"\"title\"\":\"\"Widget Title\"\",\n \"\"type\"\":\"\"slo\"\",\n \"\"view_type\"\":\"\"detail\"\",\n \"\"time_windows\"\":[\n \"\"7d\"\",\n \"\"previous_week\"\"\n ],\n \"\"slo_id\"\":\"\"56789\"\",\n \"\"show_error_budget\"\":true,\n \"\"view_mode\"\":\"\"overall\"\",\n \"\"global_time_target\"\":\"\"0\"\"\n }\n }\n ],\n \"\"template_variables\"\":[\n {\n \"\"name\"\":\"\"var_1\"\",\n \"\"default\"\":\"\"aws\"\",\n \"\"prefix\"\":\"\"host\"\"\n },\n {\n \"\"name\"\":\"\"var_2\"\",\n \"\"default\"\":\"\"autoscaling\"\",\n \"\"prefix\"\":\"\"service_name\"\"\n }\n ],\n \"\"layout_type\"\":\"\"ordered\"\",\n \"\"is_read_only\"\":true,\n \"\"notify_list\"\":[\n\n ],\n \"\"template_variable_presets\"\":[\n {\n \"\"name\"\":\"\"preset_1\"\",\n \"\"template_variables\"\":[\n {\n \"\"name\"\":\"\"var_1\"\",\n \"\"value\"\":\"\"host.dc\"\"\n },\n {\n \"\"name\"\":\"\"var_2\"\",\n \"\"value\"\":\"\"my_service\"\"\n }\n ]\n }\n ]\n}\n\n\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v4/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewDashboardJson(ctx, \"dashboardJson\", \u0026datadog.DashboardJsonArgs{\n\t\t\tDashboard: pulumi.String(`{\n \"title\":\"Ordered Layout Dashboard\",\n \"description\":\"Created using the Datadog provider in Pulumi\",\n \"widgets\":[\n {\n \"id\":719369537777170,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"alert_graph\",\n \"alert_id\":\"895605\",\n \"viz_type\":\"timeseries\"\n }\n },\n {\n \"id\":2306240030393868,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"alert_value\",\n \"alert_id\":\"895605\",\n \"unit\":\"b\",\n \"text_align\":\"center\",\n \"precision\":3\n }\n },\n {\n \"id\":6990998850881326,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"alert_value\",\n \"alert_id\":\"895605\",\n \"unit\":\"b\",\n \"text_align\":\"center\",\n \"precision\":3\n }\n },\n {\n \"id\":3351284044659007,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"change\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"compare_to\":\"week_before\",\n \"change_type\":\"absolute\",\n \"order_dir\":\"desc\",\n \"increase_good\":true,\n \"order_by\":\"name\",\n \"show_present\":true\n }\n ]\n }\n },\n {\n \"id\":6450290622996182,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"show_legend\":false,\n \"type\":\"distribution\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"style\":{\n \"palette\":\"warm\"\n }\n }\n ]\n }\n },\n {\n \"id\":4902842646291536,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"check_status\",\n \"check\":\"aws.ecs.agent_connected\",\n \"grouping\":\"cluster\",\n \"group_by\":[\n \"account\",\n \"cluster\"\n ],\n \"tags\":[\n \"account:demo\",\n \"cluster:awseb-ruthebdog-env-8-dn3m6u3gvk\"\n ]\n }\n },\n {\n \"id\":6392349954822644,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"show_legend\":false,\n \"type\":\"heatmap\",\n \"yaxis\":{\n \"scale\":\"sqrt\",\n \"include_zero\":true,\n \"min\":\"1\",\n \"max\":\"2\"\n },\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"style\":{\n \"palette\":\"warm\"\n }\n }\n ]\n }\n },\n {\n \"id\":5222961478940988,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"hostmap\",\n \"requests\":{\n \"fill\":{\n \"q\":\"avg:system.load.1{*} by {host}\"\n },\n \"size\":{\n \"q\":\"avg:memcache.uptime{*} by {host}\"\n }\n },\n \"node_type\":\"container\",\n \"no_metric_hosts\":true,\n \"no_group_hosts\":true,\n \"group\":[\n \"host\",\n \"region\"\n ],\n \"scope\":[\n \"region:us-east-1\",\n \"aws_account:727006795293\"\n ],\n \"style\":{\n \"palette\":\"yellow_to_green\",\n \"palette_flip\":true,\n \"fill_min\":\"10\",\n \"fill_max\":\"20\"\n }\n }\n },\n {\n \"id\":8121199734227072,\n \"definition\":{\n \"type\":\"note\",\n \"content\":\"note text\",\n \"background_color\":\"pink\",\n \"font_size\":\"14\",\n \"text_align\":\"center\",\n \"show_tick\":true,\n \"tick_pos\":\"50%\",\n \"tick_edge\":\"left\"\n }\n },\n {\n \"id\":1775856835833038,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"query_value\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"aggregator\":\"sum\",\n \"conditional_formats\":[\n {\n \"hide_value\":false,\n \"comparator\":\"\u003c\",\n \"palette\":\"white_on_green\",\n \"value\":2\n },\n {\n \"hide_value\":false,\n \"comparator\":\"\u003e\",\n \"palette\":\"white_on_red\",\n \"value\":2.2\n }\n ]\n }\n ],\n \"autoscale\":true,\n \"custom_unit\":\"xx\",\n \"text_align\":\"right\",\n \"precision\":4\n }\n },\n {\n \"id\":8461455966625581,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"query_table\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"aggregator\":\"sum\",\n \"conditional_formats\":[\n {\n \"hide_value\":false,\n \"comparator\":\"\u003c\",\n \"palette\":\"white_on_green\",\n \"value\":2\n },\n {\n \"hide_value\":false,\n \"comparator\":\"\u003e\",\n \"palette\":\"white_on_red\",\n \"value\":2.2\n }\n ],\n \"limit\":10\n }\n ]\n }\n },\n {\n \"id\":8660006349418736,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"scatterplot\",\n \"requests\":{\n \"x\":{\n \"q\":\"avg:system.cpu.user{*} by {service, account}\",\n \"aggregator\":\"max\"\n },\n \"y\":{\n \"q\":\"avg:system.mem.used{*} by {service, account}\",\n \"aggregator\":\"min\"\n }\n },\n \"xaxis\":{\n \"scale\":\"pow\",\n \"label\":\"x\",\n \"include_zero\":true,\n \"min\":\"1\",\n \"max\":\"2000\"\n },\n \"yaxis\":{\n \"scale\":\"log\",\n \"label\":\"y\",\n \"include_zero\":false,\n \"min\":\"5\",\n \"max\":\"2222\"\n },\n \"color_by_groups\":[\n \"account\",\n \"apm-role-group\"\n ]\n }\n },\n {\n \"id\":1669590772917638,\n \"definition\":{\n \"title\":\"env: prod, datacenter:dc1, service: master-db\",\n \"title_size\":\"16\",\n \"title_align\":\"left\",\n \"type\":\"servicemap\",\n \"service\":\"master-db\",\n \"filters\":[\n \"env:prod\",\n \"datacenter:dc1\"\n ]\n }\n },\n {\n \"id\":2138829058361817,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"show_legend\":true,\n \"legend_size\":\"2\",\n \"type\":\"timeseries\",\n \"requests\":[\n {\n \"q\":\"avg:system.cpu.user{app:general} by {env}\",\n \"on_right_yaxis\":false,\n \"metadata\":[\n {\n \"expression\":\"avg:system.cpu.user{app:general} by {env}\",\n \"alias_name\":\"Alpha\"\n }\n ],\n \"style\":{\n \"palette\":\"warm\",\n \"line_type\":\"dashed\",\n \"line_width\":\"thin\"\n },\n \"display_type\":\"line\"\n },\n {\n \"on_right_yaxis\":false,\n \"log_query\":{\n \"index\":\"mcnulty\",\n \"search\":{\n \"query\":\"status:info\"\n },\n \"group_by\":[\n {\n \"facet\":\"host\",\n \"sort\":{\n \"facet\":\"@duration\",\n \"aggregation\":\"avg\",\n \"order\":\"desc\"\n },\n \"limit\":10\n }\n ],\n \"compute\":{\n \"facet\":\"@duration\",\n \"interval\":5000,\n \"aggregation\":\"avg\"\n }\n },\n \"display_type\":\"area\"\n },\n {\n \"on_right_yaxis\":false,\n \"apm_query\":{\n \"index\":\"apm-search\",\n \"search\":{\n \"query\":\"type:web\"\n },\n \"group_by\":[\n {\n \"facet\":\"resource_name\",\n \"sort\":{\n \"facet\":\"@string_query.interval\",\n \"aggregation\":\"avg\",\n \"order\":\"desc\"\n },\n \"limit\":50\n }\n ],\n \"compute\":{\n \"facet\":\"@duration\",\n \"interval\":5000,\n \"aggregation\":\"avg\"\n }\n },\n \"display_type\":\"bars\"\n },\n {\n \"on_right_yaxis\":false,\n \"process_query\":{\n \"search_by\":\"error\",\n \"metric\":\"process.stat.cpu.total_pct\",\n \"limit\":50,\n \"filter_by\":[\n \"active\"\n ]\n },\n \"display_type\":\"area\"\n }\n ],\n \"yaxis\":{\n \"scale\":\"log\",\n \"include_zero\":false,\n \"max\":\"100\"\n },\n \"events\":[\n {\n \"q\":\"sources:test tags:1\"\n },\n {\n \"q\":\"sources:test tags:2\"\n }\n ],\n \"markers\":[\n {\n \"label\":\" z=6 \",\n \"value\":\"y = 4\",\n \"display_type\":\"error dashed\"\n },\n {\n \"label\":\" x=8 \",\n \"value\":\"10 \u003c y \u003c 999\",\n \"display_type\":\"ok solid\"\n }\n ]\n }\n },\n {\n \"id\":7307171374656551,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"toplist\",\n \"requests\":[\n {\n \"q\":\"avg:system.cpu.user{app:general} by {env}\",\n \"conditional_formats\":[\n {\n \"hide_value\":false,\n \"comparator\":\"\u003c\",\n \"palette\":\"white_on_green\",\n \"value\":2\n },\n {\n \"hide_value\":false,\n \"comparator\":\"\u003e\",\n \"palette\":\"white_on_red\",\n \"value\":2.2\n }\n ]\n }\n ]\n }\n },\n {\n \"id\":7086674838553258,\n \"definition\":{\n \"title\":\"Group Widget\",\n \"type\":\"group\",\n \"layout_type\":\"ordered\",\n \"widgets\":[\n {\n \"id\":3726092277657502,\n \"definition\":{\n \"type\":\"note\",\n \"content\":\"cluster note widget\",\n \"background_color\":\"pink\",\n \"font_size\":\"14\",\n \"text_align\":\"center\",\n \"show_tick\":true,\n \"tick_pos\":\"50%\",\n \"tick_edge\":\"left\"\n }\n },\n {\n \"id\":6376384650558057,\n \"definition\":{\n \"title\":\"Alert Graph\",\n \"type\":\"alert_graph\",\n \"alert_id\":\"123\",\n \"viz_type\":\"toplist\"\n }\n }\n ]\n }\n },\n {\n \"id\":4668903563678912,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"slo\",\n \"view_type\":\"detail\",\n \"time_windows\":[\n \"7d\",\n \"previous_week\"\n ],\n \"slo_id\":\"56789\",\n \"show_error_budget\":true,\n \"view_mode\":\"overall\",\n \"global_time_target\":\"0\"\n }\n }\n ],\n \"template_variables\":[\n {\n \"name\":\"var_1\",\n \"default\":\"aws\",\n \"prefix\":\"host\"\n },\n {\n \"name\":\"var_2\",\n \"default\":\"autoscaling\",\n \"prefix\":\"service_name\"\n }\n ],\n \"layout_type\":\"ordered\",\n \"is_read_only\":true,\n \"notify_list\":[\n\n ],\n \"template_variable_presets\":[\n {\n \"name\":\"preset_1\",\n \"template_variables\":[\n {\n \"name\":\"var_1\",\n \"value\":\"host.dc\"\n },\n {\n \"name\":\"var_2\",\n \"value\":\"my_service\"\n }\n ]\n }\n ]\n}\n\n`),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.DashboardJson;\nimport com.pulumi.datadog.DashboardJsonArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var dashboardJson = new DashboardJson(\"dashboardJson\", DashboardJsonArgs.builder() \n .dashboard(\"\"\"\n{\n \"title\":\"Ordered Layout Dashboard\",\n \"description\":\"Created using the Datadog provider in Pulumi\",\n \"widgets\":[\n {\n \"id\":719369537777170,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"alert_graph\",\n \"alert_id\":\"895605\",\n \"viz_type\":\"timeseries\"\n }\n },\n {\n \"id\":2306240030393868,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"alert_value\",\n \"alert_id\":\"895605\",\n \"unit\":\"b\",\n \"text_align\":\"center\",\n \"precision\":3\n }\n },\n {\n \"id\":6990998850881326,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"alert_value\",\n \"alert_id\":\"895605\",\n \"unit\":\"b\",\n \"text_align\":\"center\",\n \"precision\":3\n }\n },\n {\n \"id\":3351284044659007,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"change\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"compare_to\":\"week_before\",\n \"change_type\":\"absolute\",\n \"order_dir\":\"desc\",\n \"increase_good\":true,\n \"order_by\":\"name\",\n \"show_present\":true\n }\n ]\n }\n },\n {\n \"id\":6450290622996182,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"show_legend\":false,\n \"type\":\"distribution\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"style\":{\n \"palette\":\"warm\"\n }\n }\n ]\n }\n },\n {\n \"id\":4902842646291536,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"check_status\",\n \"check\":\"aws.ecs.agent_connected\",\n \"grouping\":\"cluster\",\n \"group_by\":[\n \"account\",\n \"cluster\"\n ],\n \"tags\":[\n \"account:demo\",\n \"cluster:awseb-ruthebdog-env-8-dn3m6u3gvk\"\n ]\n }\n },\n {\n \"id\":6392349954822644,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"show_legend\":false,\n \"type\":\"heatmap\",\n \"yaxis\":{\n \"scale\":\"sqrt\",\n \"include_zero\":true,\n \"min\":\"1\",\n \"max\":\"2\"\n },\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"style\":{\n \"palette\":\"warm\"\n }\n }\n ]\n }\n },\n {\n \"id\":5222961478940988,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"hostmap\",\n \"requests\":{\n \"fill\":{\n \"q\":\"avg:system.load.1{*} by {host}\"\n },\n \"size\":{\n \"q\":\"avg:memcache.uptime{*} by {host}\"\n }\n },\n \"node_type\":\"container\",\n \"no_metric_hosts\":true,\n \"no_group_hosts\":true,\n \"group\":[\n \"host\",\n \"region\"\n ],\n \"scope\":[\n \"region:us-east-1\",\n \"aws_account:727006795293\"\n ],\n \"style\":{\n \"palette\":\"yellow_to_green\",\n \"palette_flip\":true,\n \"fill_min\":\"10\",\n \"fill_max\":\"20\"\n }\n }\n },\n {\n \"id\":8121199734227072,\n \"definition\":{\n \"type\":\"note\",\n \"content\":\"note text\",\n \"background_color\":\"pink\",\n \"font_size\":\"14\",\n \"text_align\":\"center\",\n \"show_tick\":true,\n \"tick_pos\":\"50%\",\n \"tick_edge\":\"left\"\n }\n },\n {\n \"id\":1775856835833038,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"query_value\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"aggregator\":\"sum\",\n \"conditional_formats\":[\n {\n \"hide_value\":false,\n \"comparator\":\"\u003c\",\n \"palette\":\"white_on_green\",\n \"value\":2\n },\n {\n \"hide_value\":false,\n \"comparator\":\"\u003e\",\n \"palette\":\"white_on_red\",\n \"value\":2.2\n }\n ]\n }\n ],\n \"autoscale\":true,\n \"custom_unit\":\"xx\",\n \"text_align\":\"right\",\n \"precision\":4\n }\n },\n {\n \"id\":8461455966625581,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"query_table\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"aggregator\":\"sum\",\n \"conditional_formats\":[\n {\n \"hide_value\":false,\n \"comparator\":\"\u003c\",\n \"palette\":\"white_on_green\",\n \"value\":2\n },\n {\n \"hide_value\":false,\n \"comparator\":\"\u003e\",\n \"palette\":\"white_on_red\",\n \"value\":2.2\n }\n ],\n \"limit\":10\n }\n ]\n }\n },\n {\n \"id\":8660006349418736,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"scatterplot\",\n \"requests\":{\n \"x\":{\n \"q\":\"avg:system.cpu.user{*} by {service, account}\",\n \"aggregator\":\"max\"\n },\n \"y\":{\n \"q\":\"avg:system.mem.used{*} by {service, account}\",\n \"aggregator\":\"min\"\n }\n },\n \"xaxis\":{\n \"scale\":\"pow\",\n \"label\":\"x\",\n \"include_zero\":true,\n \"min\":\"1\",\n \"max\":\"2000\"\n },\n \"yaxis\":{\n \"scale\":\"log\",\n \"label\":\"y\",\n \"include_zero\":false,\n \"min\":\"5\",\n \"max\":\"2222\"\n },\n \"color_by_groups\":[\n \"account\",\n \"apm-role-group\"\n ]\n }\n },\n {\n \"id\":1669590772917638,\n \"definition\":{\n \"title\":\"env: prod, datacenter:dc1, service: master-db\",\n \"title_size\":\"16\",\n \"title_align\":\"left\",\n \"type\":\"servicemap\",\n \"service\":\"master-db\",\n \"filters\":[\n \"env:prod\",\n \"datacenter:dc1\"\n ]\n }\n },\n {\n \"id\":2138829058361817,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"show_legend\":true,\n \"legend_size\":\"2\",\n \"type\":\"timeseries\",\n \"requests\":[\n {\n \"q\":\"avg:system.cpu.user{app:general} by {env}\",\n \"on_right_yaxis\":false,\n \"metadata\":[\n {\n \"expression\":\"avg:system.cpu.user{app:general} by {env}\",\n \"alias_name\":\"Alpha\"\n }\n ],\n \"style\":{\n \"palette\":\"warm\",\n \"line_type\":\"dashed\",\n \"line_width\":\"thin\"\n },\n \"display_type\":\"line\"\n },\n {\n \"on_right_yaxis\":false,\n \"log_query\":{\n \"index\":\"mcnulty\",\n \"search\":{\n \"query\":\"status:info\"\n },\n \"group_by\":[\n {\n \"facet\":\"host\",\n \"sort\":{\n \"facet\":\"@duration\",\n \"aggregation\":\"avg\",\n \"order\":\"desc\"\n },\n \"limit\":10\n }\n ],\n \"compute\":{\n \"facet\":\"@duration\",\n \"interval\":5000,\n \"aggregation\":\"avg\"\n }\n },\n \"display_type\":\"area\"\n },\n {\n \"on_right_yaxis\":false,\n \"apm_query\":{\n \"index\":\"apm-search\",\n \"search\":{\n \"query\":\"type:web\"\n },\n \"group_by\":[\n {\n \"facet\":\"resource_name\",\n \"sort\":{\n \"facet\":\"@string_query.interval\",\n \"aggregation\":\"avg\",\n \"order\":\"desc\"\n },\n \"limit\":50\n }\n ],\n \"compute\":{\n \"facet\":\"@duration\",\n \"interval\":5000,\n \"aggregation\":\"avg\"\n }\n },\n \"display_type\":\"bars\"\n },\n {\n \"on_right_yaxis\":false,\n \"process_query\":{\n \"search_by\":\"error\",\n \"metric\":\"process.stat.cpu.total_pct\",\n \"limit\":50,\n \"filter_by\":[\n \"active\"\n ]\n },\n \"display_type\":\"area\"\n }\n ],\n \"yaxis\":{\n \"scale\":\"log\",\n \"include_zero\":false,\n \"max\":\"100\"\n },\n \"events\":[\n {\n \"q\":\"sources:test tags:1\"\n },\n {\n \"q\":\"sources:test tags:2\"\n }\n ],\n \"markers\":[\n {\n \"label\":\" z=6 \",\n \"value\":\"y = 4\",\n \"display_type\":\"error dashed\"\n },\n {\n \"label\":\" x=8 \",\n \"value\":\"10 \u003c y \u003c 999\",\n \"display_type\":\"ok solid\"\n }\n ]\n }\n },\n {\n \"id\":7307171374656551,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"toplist\",\n \"requests\":[\n {\n \"q\":\"avg:system.cpu.user{app:general} by {env}\",\n \"conditional_formats\":[\n {\n \"hide_value\":false,\n \"comparator\":\"\u003c\",\n \"palette\":\"white_on_green\",\n \"value\":2\n },\n {\n \"hide_value\":false,\n \"comparator\":\"\u003e\",\n \"palette\":\"white_on_red\",\n \"value\":2.2\n }\n ]\n }\n ]\n }\n },\n {\n \"id\":7086674838553258,\n \"definition\":{\n \"title\":\"Group Widget\",\n \"type\":\"group\",\n \"layout_type\":\"ordered\",\n \"widgets\":[\n {\n \"id\":3726092277657502,\n \"definition\":{\n \"type\":\"note\",\n \"content\":\"cluster note widget\",\n \"background_color\":\"pink\",\n \"font_size\":\"14\",\n \"text_align\":\"center\",\n \"show_tick\":true,\n \"tick_pos\":\"50%\",\n \"tick_edge\":\"left\"\n }\n },\n {\n \"id\":6376384650558057,\n \"definition\":{\n \"title\":\"Alert Graph\",\n \"type\":\"alert_graph\",\n \"alert_id\":\"123\",\n \"viz_type\":\"toplist\"\n }\n }\n ]\n }\n },\n {\n \"id\":4668903563678912,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"slo\",\n \"view_type\":\"detail\",\n \"time_windows\":[\n \"7d\",\n \"previous_week\"\n ],\n \"slo_id\":\"56789\",\n \"show_error_budget\":true,\n \"view_mode\":\"overall\",\n \"global_time_target\":\"0\"\n }\n }\n ],\n \"template_variables\":[\n {\n \"name\":\"var_1\",\n \"default\":\"aws\",\n \"prefix\":\"host\"\n },\n {\n \"name\":\"var_2\",\n \"default\":\"autoscaling\",\n \"prefix\":\"service_name\"\n }\n ],\n \"layout_type\":\"ordered\",\n \"is_read_only\":true,\n \"notify_list\":[\n\n ],\n \"template_variable_presets\":[\n {\n \"name\":\"preset_1\",\n \"template_variables\":[\n {\n \"name\":\"var_1\",\n \"value\":\"host.dc\"\n },\n {\n \"name\":\"var_2\",\n \"value\":\"my_service\"\n }\n ]\n }\n ]\n}\n\n \"\"\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Example Dashboard JSON\n dashboardJson:\n type: datadog:DashboardJson\n properties:\n dashboard: |+\n {\n \"title\":\"Ordered Layout Dashboard\",\n \"description\":\"Created using the Datadog provider in Pulumi\",\n \"widgets\":[\n {\n \"id\":719369537777170,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"alert_graph\",\n \"alert_id\":\"895605\",\n \"viz_type\":\"timeseries\"\n }\n },\n {\n \"id\":2306240030393868,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"alert_value\",\n \"alert_id\":\"895605\",\n \"unit\":\"b\",\n \"text_align\":\"center\",\n \"precision\":3\n }\n },\n {\n \"id\":6990998850881326,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"alert_value\",\n \"alert_id\":\"895605\",\n \"unit\":\"b\",\n \"text_align\":\"center\",\n \"precision\":3\n }\n },\n {\n \"id\":3351284044659007,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"change\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"compare_to\":\"week_before\",\n \"change_type\":\"absolute\",\n \"order_dir\":\"desc\",\n \"increase_good\":true,\n \"order_by\":\"name\",\n \"show_present\":true\n }\n ]\n }\n },\n {\n \"id\":6450290622996182,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"show_legend\":false,\n \"type\":\"distribution\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"style\":{\n \"palette\":\"warm\"\n }\n }\n ]\n }\n },\n {\n \"id\":4902842646291536,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"check_status\",\n \"check\":\"aws.ecs.agent_connected\",\n \"grouping\":\"cluster\",\n \"group_by\":[\n \"account\",\n \"cluster\"\n ],\n \"tags\":[\n \"account:demo\",\n \"cluster:awseb-ruthebdog-env-8-dn3m6u3gvk\"\n ]\n }\n },\n {\n \"id\":6392349954822644,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"show_legend\":false,\n \"type\":\"heatmap\",\n \"yaxis\":{\n \"scale\":\"sqrt\",\n \"include_zero\":true,\n \"min\":\"1\",\n \"max\":\"2\"\n },\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"style\":{\n \"palette\":\"warm\"\n }\n }\n ]\n }\n },\n {\n \"id\":5222961478940988,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"hostmap\",\n \"requests\":{\n \"fill\":{\n \"q\":\"avg:system.load.1{*} by {host}\"\n },\n \"size\":{\n \"q\":\"avg:memcache.uptime{*} by {host}\"\n }\n },\n \"node_type\":\"container\",\n \"no_metric_hosts\":true,\n \"no_group_hosts\":true,\n \"group\":[\n \"host\",\n \"region\"\n ],\n \"scope\":[\n \"region:us-east-1\",\n \"aws_account:727006795293\"\n ],\n \"style\":{\n \"palette\":\"yellow_to_green\",\n \"palette_flip\":true,\n \"fill_min\":\"10\",\n \"fill_max\":\"20\"\n }\n }\n },\n {\n \"id\":8121199734227072,\n \"definition\":{\n \"type\":\"note\",\n \"content\":\"note text\",\n \"background_color\":\"pink\",\n \"font_size\":\"14\",\n \"text_align\":\"center\",\n \"show_tick\":true,\n \"tick_pos\":\"50%\",\n \"tick_edge\":\"left\"\n }\n },\n {\n \"id\":1775856835833038,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"query_value\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"aggregator\":\"sum\",\n \"conditional_formats\":[\n {\n \"hide_value\":false,\n \"comparator\":\"\u003c\",\n \"palette\":\"white_on_green\",\n \"value\":2\n },\n {\n \"hide_value\":false,\n \"comparator\":\"\u003e\",\n \"palette\":\"white_on_red\",\n \"value\":2.2\n }\n ]\n }\n ],\n \"autoscale\":true,\n \"custom_unit\":\"xx\",\n \"text_align\":\"right\",\n \"precision\":4\n }\n },\n {\n \"id\":8461455966625581,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"query_table\",\n \"requests\":[\n {\n \"q\":\"avg:system.load.1{env:staging} by {account}\",\n \"aggregator\":\"sum\",\n \"conditional_formats\":[\n {\n \"hide_value\":false,\n \"comparator\":\"\u003c\",\n \"palette\":\"white_on_green\",\n \"value\":2\n },\n {\n \"hide_value\":false,\n \"comparator\":\"\u003e\",\n \"palette\":\"white_on_red\",\n \"value\":2.2\n }\n ],\n \"limit\":10\n }\n ]\n }\n },\n {\n \"id\":8660006349418736,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"scatterplot\",\n \"requests\":{\n \"x\":{\n \"q\":\"avg:system.cpu.user{*} by {service, account}\",\n \"aggregator\":\"max\"\n },\n \"y\":{\n \"q\":\"avg:system.mem.used{*} by {service, account}\",\n \"aggregator\":\"min\"\n }\n },\n \"xaxis\":{\n \"scale\":\"pow\",\n \"label\":\"x\",\n \"include_zero\":true,\n \"min\":\"1\",\n \"max\":\"2000\"\n },\n \"yaxis\":{\n \"scale\":\"log\",\n \"label\":\"y\",\n \"include_zero\":false,\n \"min\":\"5\",\n \"max\":\"2222\"\n },\n \"color_by_groups\":[\n \"account\",\n \"apm-role-group\"\n ]\n }\n },\n {\n \"id\":1669590772917638,\n \"definition\":{\n \"title\":\"env: prod, datacenter:dc1, service: master-db\",\n \"title_size\":\"16\",\n \"title_align\":\"left\",\n \"type\":\"servicemap\",\n \"service\":\"master-db\",\n \"filters\":[\n \"env:prod\",\n \"datacenter:dc1\"\n ]\n }\n },\n {\n \"id\":2138829058361817,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"show_legend\":true,\n \"legend_size\":\"2\",\n \"type\":\"timeseries\",\n \"requests\":[\n {\n \"q\":\"avg:system.cpu.user{app:general} by {env}\",\n \"on_right_yaxis\":false,\n \"metadata\":[\n {\n \"expression\":\"avg:system.cpu.user{app:general} by {env}\",\n \"alias_name\":\"Alpha\"\n }\n ],\n \"style\":{\n \"palette\":\"warm\",\n \"line_type\":\"dashed\",\n \"line_width\":\"thin\"\n },\n \"display_type\":\"line\"\n },\n {\n \"on_right_yaxis\":false,\n \"log_query\":{\n \"index\":\"mcnulty\",\n \"search\":{\n \"query\":\"status:info\"\n },\n \"group_by\":[\n {\n \"facet\":\"host\",\n \"sort\":{\n \"facet\":\"@duration\",\n \"aggregation\":\"avg\",\n \"order\":\"desc\"\n },\n \"limit\":10\n }\n ],\n \"compute\":{\n \"facet\":\"@duration\",\n \"interval\":5000,\n \"aggregation\":\"avg\"\n }\n },\n \"display_type\":\"area\"\n },\n {\n \"on_right_yaxis\":false,\n \"apm_query\":{\n \"index\":\"apm-search\",\n \"search\":{\n \"query\":\"type:web\"\n },\n \"group_by\":[\n {\n \"facet\":\"resource_name\",\n \"sort\":{\n \"facet\":\"@string_query.interval\",\n \"aggregation\":\"avg\",\n \"order\":\"desc\"\n },\n \"limit\":50\n }\n ],\n \"compute\":{\n \"facet\":\"@duration\",\n \"interval\":5000,\n \"aggregation\":\"avg\"\n }\n },\n \"display_type\":\"bars\"\n },\n {\n \"on_right_yaxis\":false,\n \"process_query\":{\n \"search_by\":\"error\",\n \"metric\":\"process.stat.cpu.total_pct\",\n \"limit\":50,\n \"filter_by\":[\n \"active\"\n ]\n },\n \"display_type\":\"area\"\n }\n ],\n \"yaxis\":{\n \"scale\":\"log\",\n \"include_zero\":false,\n \"max\":\"100\"\n },\n \"events\":[\n {\n \"q\":\"sources:test tags:1\"\n },\n {\n \"q\":\"sources:test tags:2\"\n }\n ],\n \"markers\":[\n {\n \"label\":\" z=6 \",\n \"value\":\"y = 4\",\n \"display_type\":\"error dashed\"\n },\n {\n \"label\":\" x=8 \",\n \"value\":\"10 \u003c y \u003c 999\",\n \"display_type\":\"ok solid\"\n }\n ]\n }\n },\n {\n \"id\":7307171374656551,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"toplist\",\n \"requests\":[\n {\n \"q\":\"avg:system.cpu.user{app:general} by {env}\",\n \"conditional_formats\":[\n {\n \"hide_value\":false,\n \"comparator\":\"\u003c\",\n \"palette\":\"white_on_green\",\n \"value\":2\n },\n {\n \"hide_value\":false,\n \"comparator\":\"\u003e\",\n \"palette\":\"white_on_red\",\n \"value\":2.2\n }\n ]\n }\n ]\n }\n },\n {\n \"id\":7086674838553258,\n \"definition\":{\n \"title\":\"Group Widget\",\n \"type\":\"group\",\n \"layout_type\":\"ordered\",\n \"widgets\":[\n {\n \"id\":3726092277657502,\n \"definition\":{\n \"type\":\"note\",\n \"content\":\"cluster note widget\",\n \"background_color\":\"pink\",\n \"font_size\":\"14\",\n \"text_align\":\"center\",\n \"show_tick\":true,\n \"tick_pos\":\"50%\",\n \"tick_edge\":\"left\"\n }\n },\n {\n \"id\":6376384650558057,\n \"definition\":{\n \"title\":\"Alert Graph\",\n \"type\":\"alert_graph\",\n \"alert_id\":\"123\",\n \"viz_type\":\"toplist\"\n }\n }\n ]\n }\n },\n {\n \"id\":4668903563678912,\n \"definition\":{\n \"title\":\"Widget Title\",\n \"type\":\"slo\",\n \"view_type\":\"detail\",\n \"time_windows\":[\n \"7d\",\n \"previous_week\"\n ],\n \"slo_id\":\"56789\",\n \"show_error_budget\":true,\n \"view_mode\":\"overall\",\n \"global_time_target\":\"0\"\n }\n }\n ],\n \"template_variables\":[\n {\n \"name\":\"var_1\",\n \"default\":\"aws\",\n \"prefix\":\"host\"\n },\n {\n \"name\":\"var_2\",\n \"default\":\"autoscaling\",\n \"prefix\":\"service_name\"\n }\n ],\n \"layout_type\":\"ordered\",\n \"is_read_only\":true,\n \"notify_list\":[\n\n ],\n \"template_variable_presets\":[\n {\n \"name\":\"preset_1\",\n \"template_variables\":[\n {\n \"name\":\"var_1\",\n \"value\":\"host.dc\"\n },\n {\n \"name\":\"var_2\",\n \"value\":\"my_service\"\n }\n ]\n }\n ]\n }\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\n\n\n```sh\n $ pulumi import datadog:index/dashboardJson:DashboardJson my_service_dashboard sv7-gyh-kas\n```\n\n ", "properties": { "dashboard": { "type": "string", @@ -34964,7 +34964,7 @@ } }, "datadog:index/dashboardList:DashboardList": { - "description": "Provides a Datadog dashboard_list resource. This can be used to create and manage Datadog Dashboard Lists and the individual dashboards within them.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst time = new datadog.Dashboard(\"time\", {\n title: \"TF Test Layout Dashboard\",\n description: \"Created using the Datadog provider\",\n layoutType: \"ordered\",\n isReadOnly: true,\n widgets: [{\n alertGraphDefinition: {\n alertId: \"1234\",\n vizType: \"timeseries\",\n title: \"Widget Title\",\n liveSpan: \"1h\",\n },\n }],\n});\nconst screen = new datadog.Dashboard(\"screen\", {\n title: \"TF Test Free Layout Dashboard\",\n description: \"Created using the Datadog provider\",\n layoutType: \"free\",\n isReadOnly: false,\n widgets: [{\n eventStreamDefinition: {\n query: \"*\",\n eventSize: \"l\",\n title: \"Widget Title\",\n titleSize: \"16\",\n titleAlign: \"left\",\n liveSpan: \"1h\",\n },\n widgetLayout: {\n height: 43,\n width: 32,\n x: 5,\n y: 5,\n },\n }],\n});\n// Create a new Dashboard List with two Dashboards\nconst newList = new datadog.DashboardList(\"newList\", {\n name: \"Automated Created List\",\n dashItems: [\n {\n type: \"custom_timeboard\",\n dashId: time.id,\n },\n {\n type: \"custom_screenboard\",\n dashId: screen.id,\n },\n ],\n}, {\n dependsOn: [\n screen,\n time,\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\ntime = datadog.Dashboard(\"time\",\n title=\"TF Test Layout Dashboard\",\n description=\"Created using the Datadog provider\",\n layout_type=\"ordered\",\n is_read_only=True,\n widgets=[datadog.DashboardWidgetArgs(\n alert_graph_definition=datadog.DashboardWidgetAlertGraphDefinitionArgs(\n alert_id=\"1234\",\n viz_type=\"timeseries\",\n title=\"Widget Title\",\n live_span=\"1h\",\n ),\n )])\nscreen = datadog.Dashboard(\"screen\",\n title=\"TF Test Free Layout Dashboard\",\n description=\"Created using the Datadog provider\",\n layout_type=\"free\",\n is_read_only=False,\n widgets=[datadog.DashboardWidgetArgs(\n event_stream_definition=datadog.DashboardWidgetEventStreamDefinitionArgs(\n query=\"*\",\n event_size=\"l\",\n title=\"Widget Title\",\n title_size=\"16\",\n title_align=\"left\",\n live_span=\"1h\",\n ),\n widget_layout=datadog.DashboardWidgetWidgetLayoutArgs(\n height=43,\n width=32,\n x=5,\n y=5,\n ),\n )])\n# Create a new Dashboard List with two Dashboards\nnew_list = datadog.DashboardList(\"newList\",\n name=\"Automated Created List\",\n dash_items=[\n datadog.DashboardListDashItemArgs(\n type=\"custom_timeboard\",\n dash_id=time.id,\n ),\n datadog.DashboardListDashItemArgs(\n type=\"custom_screenboard\",\n dash_id=screen.id,\n ),\n ],\n opts=pulumi.ResourceOptions(depends_on=[\n screen,\n time,\n ]))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var time = new Datadog.Dashboard(\"time\", new()\n {\n Title = \"TF Test Layout Dashboard\",\n Description = \"Created using the Datadog provider\",\n LayoutType = \"ordered\",\n IsReadOnly = true,\n Widgets = new[]\n {\n new Datadog.Inputs.DashboardWidgetArgs\n {\n AlertGraphDefinition = new Datadog.Inputs.DashboardWidgetAlertGraphDefinitionArgs\n {\n AlertId = \"1234\",\n VizType = \"timeseries\",\n Title = \"Widget Title\",\n LiveSpan = \"1h\",\n },\n },\n },\n });\n\n var screen = new Datadog.Dashboard(\"screen\", new()\n {\n Title = \"TF Test Free Layout Dashboard\",\n Description = \"Created using the Datadog provider\",\n LayoutType = \"free\",\n IsReadOnly = false,\n Widgets = new[]\n {\n new Datadog.Inputs.DashboardWidgetArgs\n {\n EventStreamDefinition = new Datadog.Inputs.DashboardWidgetEventStreamDefinitionArgs\n {\n Query = \"*\",\n EventSize = \"l\",\n Title = \"Widget Title\",\n TitleSize = \"16\",\n TitleAlign = \"left\",\n LiveSpan = \"1h\",\n },\n WidgetLayout = new Datadog.Inputs.DashboardWidgetWidgetLayoutArgs\n {\n Height = 43,\n Width = 32,\n X = 5,\n Y = 5,\n },\n },\n },\n });\n\n // Create a new Dashboard List with two Dashboards\n var newList = new Datadog.DashboardList(\"newList\", new()\n {\n Name = \"Automated Created List\",\n DashItems = new[]\n {\n new Datadog.Inputs.DashboardListDashItemArgs\n {\n Type = \"custom_timeboard\",\n DashId = time.Id,\n },\n new Datadog.Inputs.DashboardListDashItemArgs\n {\n Type = \"custom_screenboard\",\n DashId = screen.Id,\n },\n },\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n screen,\n time,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v4/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttime, err := datadog.NewDashboard(ctx, \"time\", \u0026datadog.DashboardArgs{\n\t\t\tTitle: pulumi.String(\"TF Test Layout Dashboard\"),\n\t\t\tDescription: pulumi.String(\"Created using the Datadog provider\"),\n\t\t\tLayoutType: pulumi.String(\"ordered\"),\n\t\t\tIsReadOnly: pulumi.Bool(true),\n\t\t\tWidgets: datadog.DashboardWidgetArray{\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tAlertGraphDefinition: \u0026datadog.DashboardWidgetAlertGraphDefinitionArgs{\n\t\t\t\t\t\tAlertId: pulumi.String(\"1234\"),\n\t\t\t\t\t\tVizType: pulumi.String(\"timeseries\"),\n\t\t\t\t\t\tTitle: pulumi.String(\"Widget Title\"),\n\t\t\t\t\t\tLiveSpan: pulumi.String(\"1h\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tscreen, err := datadog.NewDashboard(ctx, \"screen\", \u0026datadog.DashboardArgs{\n\t\t\tTitle: pulumi.String(\"TF Test Free Layout Dashboard\"),\n\t\t\tDescription: pulumi.String(\"Created using the Datadog provider\"),\n\t\t\tLayoutType: pulumi.String(\"free\"),\n\t\t\tIsReadOnly: pulumi.Bool(false),\n\t\t\tWidgets: datadog.DashboardWidgetArray{\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tEventStreamDefinition: \u0026datadog.DashboardWidgetEventStreamDefinitionArgs{\n\t\t\t\t\t\tQuery: pulumi.String(\"*\"),\n\t\t\t\t\t\tEventSize: pulumi.String(\"l\"),\n\t\t\t\t\t\tTitle: pulumi.String(\"Widget Title\"),\n\t\t\t\t\t\tTitleSize: pulumi.String(\"16\"),\n\t\t\t\t\t\tTitleAlign: pulumi.String(\"left\"),\n\t\t\t\t\t\tLiveSpan: pulumi.String(\"1h\"),\n\t\t\t\t\t},\n\t\t\t\t\tWidgetLayout: \u0026datadog.DashboardWidgetWidgetLayoutArgs{\n\t\t\t\t\t\tHeight: pulumi.Int(43),\n\t\t\t\t\t\tWidth: pulumi.Int(32),\n\t\t\t\t\t\tX: pulumi.Int(5),\n\t\t\t\t\t\tY: pulumi.Int(5),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = datadog.NewDashboardList(ctx, \"newList\", \u0026datadog.DashboardListArgs{\n\t\t\tName: pulumi.String(\"Automated Created List\"),\n\t\t\tDashItems: datadog.DashboardListDashItemArray{\n\t\t\t\t\u0026datadog.DashboardListDashItemArgs{\n\t\t\t\t\tType: pulumi.String(\"custom_timeboard\"),\n\t\t\t\t\tDashId: time.ID(),\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardListDashItemArgs{\n\t\t\t\t\tType: pulumi.String(\"custom_screenboard\"),\n\t\t\t\t\tDashId: screen.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tscreen,\n\t\t\ttime,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.Dashboard;\nimport com.pulumi.datadog.DashboardArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetAlertGraphDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetEventStreamDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetWidgetLayoutArgs;\nimport com.pulumi.datadog.DashboardList;\nimport com.pulumi.datadog.DashboardListArgs;\nimport com.pulumi.datadog.inputs.DashboardListDashItemArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var time = new Dashboard(\"time\", DashboardArgs.builder() \n .title(\"TF Test Layout Dashboard\")\n .description(\"Created using the Datadog provider\")\n .layoutType(\"ordered\")\n .isReadOnly(true)\n .widgets(DashboardWidgetArgs.builder()\n .alertGraphDefinition(DashboardWidgetAlertGraphDefinitionArgs.builder()\n .alertId(\"1234\")\n .vizType(\"timeseries\")\n .title(\"Widget Title\")\n .liveSpan(\"1h\")\n .build())\n .build())\n .build());\n\n var screen = new Dashboard(\"screen\", DashboardArgs.builder() \n .title(\"TF Test Free Layout Dashboard\")\n .description(\"Created using the Datadog provider\")\n .layoutType(\"free\")\n .isReadOnly(false)\n .widgets(DashboardWidgetArgs.builder()\n .eventStreamDefinition(DashboardWidgetEventStreamDefinitionArgs.builder()\n .query(\"*\")\n .eventSize(\"l\")\n .title(\"Widget Title\")\n .titleSize(16)\n .titleAlign(\"left\")\n .liveSpan(\"1h\")\n .build())\n .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n .height(43)\n .width(32)\n .x(5)\n .y(5)\n .build())\n .build())\n .build());\n\n var newList = new DashboardList(\"newList\", DashboardListArgs.builder() \n .name(\"Automated Created List\")\n .dashItems( \n DashboardListDashItemArgs.builder()\n .type(\"custom_timeboard\")\n .dashId(time.id())\n .build(),\n DashboardListDashItemArgs.builder()\n .type(\"custom_screenboard\")\n .dashId(screen.id())\n .build())\n .build(), CustomResourceOptions.builder()\n .dependsOn( \n screen,\n time)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new Dashboard List with two Dashboards\n newList:\n type: datadog:DashboardList\n properties:\n name: Automated Created List\n dashItems:\n - type: custom_timeboard\n dashId: ${time.id}\n - type: custom_screenboard\n dashId: ${screen.id}\n options:\n dependson:\n - ${screen}\n - ${time}\n time:\n type: datadog:Dashboard\n properties:\n title: TF Test Layout Dashboard\n description: Created using the Datadog provider\n layoutType: ordered\n isReadOnly: true\n widgets:\n - alertGraphDefinition:\n alertId: '1234'\n vizType: timeseries\n title: Widget Title\n liveSpan: 1h\n screen:\n type: datadog:Dashboard\n properties:\n title: TF Test Free Layout Dashboard\n description: Created using the Datadog provider\n layoutType: free\n isReadOnly: false\n widgets:\n - eventStreamDefinition:\n query: '*'\n eventSize: l\n title: Widget Title\n titleSize: 16\n titleAlign: left\n liveSpan: 1h\n widgetLayout:\n height: 43\n width: 32\n x: 5\n y: 5\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\n\n\n```sh\n $ pulumi import datadog:index/dashboardList:DashboardList new_list 123456\n```\n\n ", + "description": "Provides a Datadog dashboard_list resource. This can be used to create and manage Datadog Dashboard Lists and the individual dashboards within them.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst time = new datadog.Dashboard(\"time\", {\n title: \"TF Test Layout Dashboard\",\n description: \"Created using the Datadog provider in Pulumi\",\n layoutType: \"ordered\",\n isReadOnly: true,\n widgets: [{\n alertGraphDefinition: {\n alertId: \"1234\",\n vizType: \"timeseries\",\n title: \"Widget Title\",\n liveSpan: \"1h\",\n },\n }],\n});\nconst screen = new datadog.Dashboard(\"screen\", {\n title: \"TF Test Free Layout Dashboard\",\n description: \"Created using the Datadog provider in Pulumi\",\n layoutType: \"free\",\n isReadOnly: false,\n widgets: [{\n eventStreamDefinition: {\n query: \"*\",\n eventSize: \"l\",\n title: \"Widget Title\",\n titleSize: \"16\",\n titleAlign: \"left\",\n liveSpan: \"1h\",\n },\n widgetLayout: {\n height: 43,\n width: 32,\n x: 5,\n y: 5,\n },\n }],\n});\n// Create a new Dashboard List with two Dashboards\nconst newList = new datadog.DashboardList(\"newList\", {\n name: \"Automated Created List\",\n dashItems: [\n {\n type: \"custom_timeboard\",\n dashId: time.id,\n },\n {\n type: \"custom_screenboard\",\n dashId: screen.id,\n },\n ],\n}, {\n dependsOn: [\n screen,\n time,\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\ntime = datadog.Dashboard(\"time\",\n title=\"TF Test Layout Dashboard\",\n description=\"Created using the Datadog provider in Pulumi\",\n layout_type=\"ordered\",\n is_read_only=True,\n widgets=[datadog.DashboardWidgetArgs(\n alert_graph_definition=datadog.DashboardWidgetAlertGraphDefinitionArgs(\n alert_id=\"1234\",\n viz_type=\"timeseries\",\n title=\"Widget Title\",\n live_span=\"1h\",\n ),\n )])\nscreen = datadog.Dashboard(\"screen\",\n title=\"TF Test Free Layout Dashboard\",\n description=\"Created using the Datadog provider in Pulumi\",\n layout_type=\"free\",\n is_read_only=False,\n widgets=[datadog.DashboardWidgetArgs(\n event_stream_definition=datadog.DashboardWidgetEventStreamDefinitionArgs(\n query=\"*\",\n event_size=\"l\",\n title=\"Widget Title\",\n title_size=\"16\",\n title_align=\"left\",\n live_span=\"1h\",\n ),\n widget_layout=datadog.DashboardWidgetWidgetLayoutArgs(\n height=43,\n width=32,\n x=5,\n y=5,\n ),\n )])\n# Create a new Dashboard List with two Dashboards\nnew_list = datadog.DashboardList(\"newList\",\n name=\"Automated Created List\",\n dash_items=[\n datadog.DashboardListDashItemArgs(\n type=\"custom_timeboard\",\n dash_id=time.id,\n ),\n datadog.DashboardListDashItemArgs(\n type=\"custom_screenboard\",\n dash_id=screen.id,\n ),\n ],\n opts=pulumi.ResourceOptions(depends_on=[\n screen,\n time,\n ]))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var time = new Datadog.Dashboard(\"time\", new()\n {\n Title = \"TF Test Layout Dashboard\",\n Description = \"Created using the Datadog provider in Pulumi\",\n LayoutType = \"ordered\",\n IsReadOnly = true,\n Widgets = new[]\n {\n new Datadog.Inputs.DashboardWidgetArgs\n {\n AlertGraphDefinition = new Datadog.Inputs.DashboardWidgetAlertGraphDefinitionArgs\n {\n AlertId = \"1234\",\n VizType = \"timeseries\",\n Title = \"Widget Title\",\n LiveSpan = \"1h\",\n },\n },\n },\n });\n\n var screen = new Datadog.Dashboard(\"screen\", new()\n {\n Title = \"TF Test Free Layout Dashboard\",\n Description = \"Created using the Datadog provider in Pulumi\",\n LayoutType = \"free\",\n IsReadOnly = false,\n Widgets = new[]\n {\n new Datadog.Inputs.DashboardWidgetArgs\n {\n EventStreamDefinition = new Datadog.Inputs.DashboardWidgetEventStreamDefinitionArgs\n {\n Query = \"*\",\n EventSize = \"l\",\n Title = \"Widget Title\",\n TitleSize = \"16\",\n TitleAlign = \"left\",\n LiveSpan = \"1h\",\n },\n WidgetLayout = new Datadog.Inputs.DashboardWidgetWidgetLayoutArgs\n {\n Height = 43,\n Width = 32,\n X = 5,\n Y = 5,\n },\n },\n },\n });\n\n // Create a new Dashboard List with two Dashboards\n var newList = new Datadog.DashboardList(\"newList\", new()\n {\n Name = \"Automated Created List\",\n DashItems = new[]\n {\n new Datadog.Inputs.DashboardListDashItemArgs\n {\n Type = \"custom_timeboard\",\n DashId = time.Id,\n },\n new Datadog.Inputs.DashboardListDashItemArgs\n {\n Type = \"custom_screenboard\",\n DashId = screen.Id,\n },\n },\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n screen,\n time,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v4/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttime, err := datadog.NewDashboard(ctx, \"time\", \u0026datadog.DashboardArgs{\n\t\t\tTitle: pulumi.String(\"TF Test Layout Dashboard\"),\n\t\t\tDescription: pulumi.String(\"Created using the Datadog provider in Pulumi\"),\n\t\t\tLayoutType: pulumi.String(\"ordered\"),\n\t\t\tIsReadOnly: pulumi.Bool(true),\n\t\t\tWidgets: datadog.DashboardWidgetArray{\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tAlertGraphDefinition: \u0026datadog.DashboardWidgetAlertGraphDefinitionArgs{\n\t\t\t\t\t\tAlertId: pulumi.String(\"1234\"),\n\t\t\t\t\t\tVizType: pulumi.String(\"timeseries\"),\n\t\t\t\t\t\tTitle: pulumi.String(\"Widget Title\"),\n\t\t\t\t\t\tLiveSpan: pulumi.String(\"1h\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tscreen, err := datadog.NewDashboard(ctx, \"screen\", \u0026datadog.DashboardArgs{\n\t\t\tTitle: pulumi.String(\"TF Test Free Layout Dashboard\"),\n\t\t\tDescription: pulumi.String(\"Created using the Datadog provider in Pulumi\"),\n\t\t\tLayoutType: pulumi.String(\"free\"),\n\t\t\tIsReadOnly: pulumi.Bool(false),\n\t\t\tWidgets: datadog.DashboardWidgetArray{\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tEventStreamDefinition: \u0026datadog.DashboardWidgetEventStreamDefinitionArgs{\n\t\t\t\t\t\tQuery: pulumi.String(\"*\"),\n\t\t\t\t\t\tEventSize: pulumi.String(\"l\"),\n\t\t\t\t\t\tTitle: pulumi.String(\"Widget Title\"),\n\t\t\t\t\t\tTitleSize: pulumi.String(\"16\"),\n\t\t\t\t\t\tTitleAlign: pulumi.String(\"left\"),\n\t\t\t\t\t\tLiveSpan: pulumi.String(\"1h\"),\n\t\t\t\t\t},\n\t\t\t\t\tWidgetLayout: \u0026datadog.DashboardWidgetWidgetLayoutArgs{\n\t\t\t\t\t\tHeight: pulumi.Int(43),\n\t\t\t\t\t\tWidth: pulumi.Int(32),\n\t\t\t\t\t\tX: pulumi.Int(5),\n\t\t\t\t\t\tY: pulumi.Int(5),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = datadog.NewDashboardList(ctx, \"newList\", \u0026datadog.DashboardListArgs{\n\t\t\tName: pulumi.String(\"Automated Created List\"),\n\t\t\tDashItems: datadog.DashboardListDashItemArray{\n\t\t\t\t\u0026datadog.DashboardListDashItemArgs{\n\t\t\t\t\tType: pulumi.String(\"custom_timeboard\"),\n\t\t\t\t\tDashId: time.ID(),\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardListDashItemArgs{\n\t\t\t\t\tType: pulumi.String(\"custom_screenboard\"),\n\t\t\t\t\tDashId: screen.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tscreen,\n\t\t\ttime,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.Dashboard;\nimport com.pulumi.datadog.DashboardArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetAlertGraphDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetEventStreamDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetWidgetLayoutArgs;\nimport com.pulumi.datadog.DashboardList;\nimport com.pulumi.datadog.DashboardListArgs;\nimport com.pulumi.datadog.inputs.DashboardListDashItemArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var time = new Dashboard(\"time\", DashboardArgs.builder() \n .title(\"TF Test Layout Dashboard\")\n .description(\"Created using the Datadog provider in Pulumi\")\n .layoutType(\"ordered\")\n .isReadOnly(true)\n .widgets(DashboardWidgetArgs.builder()\n .alertGraphDefinition(DashboardWidgetAlertGraphDefinitionArgs.builder()\n .alertId(\"1234\")\n .vizType(\"timeseries\")\n .title(\"Widget Title\")\n .liveSpan(\"1h\")\n .build())\n .build())\n .build());\n\n var screen = new Dashboard(\"screen\", DashboardArgs.builder() \n .title(\"TF Test Free Layout Dashboard\")\n .description(\"Created using the Datadog provider in Pulumi\")\n .layoutType(\"free\")\n .isReadOnly(false)\n .widgets(DashboardWidgetArgs.builder()\n .eventStreamDefinition(DashboardWidgetEventStreamDefinitionArgs.builder()\n .query(\"*\")\n .eventSize(\"l\")\n .title(\"Widget Title\")\n .titleSize(16)\n .titleAlign(\"left\")\n .liveSpan(\"1h\")\n .build())\n .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n .height(43)\n .width(32)\n .x(5)\n .y(5)\n .build())\n .build())\n .build());\n\n var newList = new DashboardList(\"newList\", DashboardListArgs.builder() \n .name(\"Automated Created List\")\n .dashItems( \n DashboardListDashItemArgs.builder()\n .type(\"custom_timeboard\")\n .dashId(time.id())\n .build(),\n DashboardListDashItemArgs.builder()\n .type(\"custom_screenboard\")\n .dashId(screen.id())\n .build())\n .build(), CustomResourceOptions.builder()\n .dependsOn( \n screen,\n time)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a new Dashboard List with two Dashboards\n newList:\n type: datadog:DashboardList\n properties:\n name: Automated Created List\n dashItems:\n - type: custom_timeboard\n dashId: ${time.id}\n - type: custom_screenboard\n dashId: ${screen.id}\n options:\n dependson:\n - ${screen}\n - ${time}\n time:\n type: datadog:Dashboard\n properties:\n title: TF Test Layout Dashboard\n description: Created using the Datadog provider in Pulumi\n layoutType: ordered\n isReadOnly: true\n widgets:\n - alertGraphDefinition:\n alertId: '1234'\n vizType: timeseries\n title: Widget Title\n liveSpan: 1h\n screen:\n type: datadog:Dashboard\n properties:\n title: TF Test Free Layout Dashboard\n description: Created using the Datadog provider in Pulumi\n layoutType: free\n isReadOnly: false\n widgets:\n - eventStreamDefinition:\n query: '*'\n eventSize: l\n title: Widget Title\n titleSize: 16\n titleAlign: left\n liveSpan: 1h\n widgetLayout:\n height: 43\n width: 32\n x: 5\n y: 5\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\n\n\n```sh\n $ pulumi import datadog:index/dashboardList:DashboardList new_list 123456\n```\n\n ", "properties": { "dashItems": { "type": "array", @@ -39529,7 +39529,7 @@ } }, "datadog:pagerduty/integration:Integration": { - "description": "Provides a Datadog - PagerDuty resource. This can be used to create and manage Datadog - PagerDuty integration. See also [PagerDuty Integration Guide](https://www.pagerduty.com/docs/guides/datadog-integration-guide/).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst pd = new datadog.pagerduty.Integration(\"pd\", {\n apiToken: \"38457822378273432587234242874\",\n schedules: [\n \"https://ddog.pagerduty.com/schedules/X123VF\",\n \"https://ddog.pagerduty.com/schedules/X321XX\",\n ],\n subdomain: \"ddog\",\n});\nconst testingFoo = new datadog.pagerduty.ServiceObject(\"testingFoo\", {\n serviceKey: \"9876543210123456789\",\n serviceName: \"testing_foo\",\n}, {\n dependsOn: [\"datadog_integration_pagerduty.pd\"],\n});\nconst testingBar = new datadog.pagerduty.ServiceObject(\"testingBar\", {\n serviceKey: \"54321098765432109876\",\n serviceName: \"testing_bar\",\n}, {\n dependsOn: [\"datadog_integration_pagerduty.pd\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\npd = datadog.pagerduty.Integration(\"pd\",\n api_token=\"38457822378273432587234242874\",\n schedules=[\n \"https://ddog.pagerduty.com/schedules/X123VF\",\n \"https://ddog.pagerduty.com/schedules/X321XX\",\n ],\n subdomain=\"ddog\")\ntesting_foo = datadog.pagerduty.ServiceObject(\"testingFoo\",\n service_key=\"9876543210123456789\",\n service_name=\"testing_foo\",\n opts=pulumi.ResourceOptions(depends_on=[\"datadog_integration_pagerduty.pd\"]))\ntesting_bar = datadog.pagerduty.ServiceObject(\"testingBar\",\n service_key=\"54321098765432109876\",\n service_name=\"testing_bar\",\n opts=pulumi.ResourceOptions(depends_on=[\"datadog_integration_pagerduty.pd\"]))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var pd = new Datadog.PagerDuty.Integration(\"pd\", new()\n {\n ApiToken = \"38457822378273432587234242874\",\n Schedules = new[]\n {\n \"https://ddog.pagerduty.com/schedules/X123VF\",\n \"https://ddog.pagerduty.com/schedules/X321XX\",\n },\n Subdomain = \"ddog\",\n });\n\n var testingFoo = new Datadog.PagerDuty.ServiceObject(\"testingFoo\", new()\n {\n ServiceKey = \"9876543210123456789\",\n ServiceName = \"testing_foo\",\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n \"datadog_integration_pagerduty.pd\",\n },\n });\n\n var testingBar = new Datadog.PagerDuty.ServiceObject(\"testingBar\", new()\n {\n ServiceKey = \"54321098765432109876\",\n ServiceName = \"testing_bar\",\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n \"datadog_integration_pagerduty.pd\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v4/go/datadog/pagerduty\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := pagerduty.NewIntegration(ctx, \"pd\", \u0026pagerduty.IntegrationArgs{\n\t\t\tApiToken: pulumi.String(\"38457822378273432587234242874\"),\n\t\t\tSchedules: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https://ddog.pagerduty.com/schedules/X123VF\"),\n\t\t\t\tpulumi.String(\"https://ddog.pagerduty.com/schedules/X321XX\"),\n\t\t\t},\n\t\t\tSubdomain: pulumi.String(\"ddog\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = pagerduty.NewServiceObject(ctx, \"testingFoo\", \u0026pagerduty.ServiceObjectArgs{\n\t\t\tServiceKey: pulumi.String(\"9876543210123456789\"),\n\t\t\tServiceName: pulumi.String(\"testing_foo\"),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tpulumi.Resource(\"datadog_integration_pagerduty.pd\"),\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = pagerduty.NewServiceObject(ctx, \"testingBar\", \u0026pagerduty.ServiceObjectArgs{\n\t\t\tServiceKey: pulumi.String(\"54321098765432109876\"),\n\t\t\tServiceName: pulumi.String(\"testing_bar\"),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tpulumi.Resource(\"datadog_integration_pagerduty.pd\"),\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.pagerduty.Integration;\nimport com.pulumi.datadog.pagerduty.IntegrationArgs;\nimport com.pulumi.datadog.pagerduty.ServiceObject;\nimport com.pulumi.datadog.pagerduty.ServiceObjectArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var pd = new Integration(\"pd\", IntegrationArgs.builder() \n .apiToken(\"38457822378273432587234242874\")\n .schedules( \n \"https://ddog.pagerduty.com/schedules/X123VF\",\n \"https://ddog.pagerduty.com/schedules/X321XX\")\n .subdomain(\"ddog\")\n .build());\n\n var testingFoo = new ServiceObject(\"testingFoo\", ServiceObjectArgs.builder() \n .serviceKey(\"9876543210123456789\")\n .serviceName(\"testing_foo\")\n .build(), CustomResourceOptions.builder()\n .dependsOn(\"datadog_integration_pagerduty.pd\")\n .build());\n\n var testingBar = new ServiceObject(\"testingBar\", ServiceObjectArgs.builder() \n .serviceKey(\"54321098765432109876\")\n .serviceName(\"testing_bar\")\n .build(), CustomResourceOptions.builder()\n .dependsOn(\"datadog_integration_pagerduty.pd\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n pd:\n type: datadog:pagerduty:Integration\n properties:\n apiToken: '38457822378273432587234242874'\n schedules:\n - https://ddog.pagerduty.com/schedules/X123VF\n - https://ddog.pagerduty.com/schedules/X321XX\n subdomain: ddog\n testingFoo:\n type: datadog:pagerduty:ServiceObject\n properties:\n serviceKey: '9876543210123456789'\n serviceName: testing_foo\n options:\n dependson:\n - datadog_integration_pagerduty.pd\n testingBar:\n type: datadog:pagerduty:ServiceObject\n properties:\n serviceKey: '54321098765432109876'\n serviceName: testing_bar\n options:\n dependson:\n - datadog_integration_pagerduty.pd\n```\n{{% /example %}}\n{{% /examples %}}", + "description": "Provides a Datadog - PagerDuty resource. This can be used to create and manage Datadog - PagerDuty integration. See also [PagerDuty Integration Guide](https://www.pagerduty.com/docs/guides/datadog-integration-guide/).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Services as Individual Resources\nconst pd = new datadog.pagerduty.Integration(\"pd\", {\n apiToken: \"38457822378273432587234242874\",\n schedules: [\n \"https://ddog.pagerduty.com/schedules/X123VF\",\n \"https://ddog.pagerduty.com/schedules/X321XX\",\n ],\n subdomain: \"ddog\",\n});\nconst testingFoo = new datadog.pagerduty.ServiceObject(\"testingFoo\", {\n serviceKey: \"9876543210123456789\",\n serviceName: \"testing_foo\",\n}, {\n dependsOn: [\"datadog_integration_pagerduty.pd\"],\n});\nconst testingBar = new datadog.pagerduty.ServiceObject(\"testingBar\", {\n serviceKey: \"54321098765432109876\",\n serviceName: \"testing_bar\",\n}, {\n dependsOn: [\"datadog_integration_pagerduty.pd\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Services as Individual Resources\npd = datadog.pagerduty.Integration(\"pd\",\n api_token=\"38457822378273432587234242874\",\n schedules=[\n \"https://ddog.pagerduty.com/schedules/X123VF\",\n \"https://ddog.pagerduty.com/schedules/X321XX\",\n ],\n subdomain=\"ddog\")\ntesting_foo = datadog.pagerduty.ServiceObject(\"testingFoo\",\n service_key=\"9876543210123456789\",\n service_name=\"testing_foo\",\n opts=pulumi.ResourceOptions(depends_on=[\"datadog_integration_pagerduty.pd\"]))\ntesting_bar = datadog.pagerduty.ServiceObject(\"testingBar\",\n service_key=\"54321098765432109876\",\n service_name=\"testing_bar\",\n opts=pulumi.ResourceOptions(depends_on=[\"datadog_integration_pagerduty.pd\"]))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n // Services as Individual Resources\n var pd = new Datadog.PagerDuty.Integration(\"pd\", new()\n {\n ApiToken = \"38457822378273432587234242874\",\n Schedules = new[]\n {\n \"https://ddog.pagerduty.com/schedules/X123VF\",\n \"https://ddog.pagerduty.com/schedules/X321XX\",\n },\n Subdomain = \"ddog\",\n });\n\n var testingFoo = new Datadog.PagerDuty.ServiceObject(\"testingFoo\", new()\n {\n ServiceKey = \"9876543210123456789\",\n ServiceName = \"testing_foo\",\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n \"datadog_integration_pagerduty.pd\",\n },\n });\n\n var testingBar = new Datadog.PagerDuty.ServiceObject(\"testingBar\", new()\n {\n ServiceKey = \"54321098765432109876\",\n ServiceName = \"testing_bar\",\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n \"datadog_integration_pagerduty.pd\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v4/go/datadog/pagerduty\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := pagerduty.NewIntegration(ctx, \"pd\", \u0026pagerduty.IntegrationArgs{\n\t\t\tApiToken: pulumi.String(\"38457822378273432587234242874\"),\n\t\t\tSchedules: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https://ddog.pagerduty.com/schedules/X123VF\"),\n\t\t\t\tpulumi.String(\"https://ddog.pagerduty.com/schedules/X321XX\"),\n\t\t\t},\n\t\t\tSubdomain: pulumi.String(\"ddog\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = pagerduty.NewServiceObject(ctx, \"testingFoo\", \u0026pagerduty.ServiceObjectArgs{\n\t\t\tServiceKey: pulumi.String(\"9876543210123456789\"),\n\t\t\tServiceName: pulumi.String(\"testing_foo\"),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tpulumi.Resource(\"datadog_integration_pagerduty.pd\"),\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = pagerduty.NewServiceObject(ctx, \"testingBar\", \u0026pagerduty.ServiceObjectArgs{\n\t\t\tServiceKey: pulumi.String(\"54321098765432109876\"),\n\t\t\tServiceName: pulumi.String(\"testing_bar\"),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tpulumi.Resource(\"datadog_integration_pagerduty.pd\"),\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.pagerduty.Integration;\nimport com.pulumi.datadog.pagerduty.IntegrationArgs;\nimport com.pulumi.datadog.pagerduty.ServiceObject;\nimport com.pulumi.datadog.pagerduty.ServiceObjectArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var pd = new Integration(\"pd\", IntegrationArgs.builder() \n .apiToken(\"38457822378273432587234242874\")\n .schedules( \n \"https://ddog.pagerduty.com/schedules/X123VF\",\n \"https://ddog.pagerduty.com/schedules/X321XX\")\n .subdomain(\"ddog\")\n .build());\n\n var testingFoo = new ServiceObject(\"testingFoo\", ServiceObjectArgs.builder() \n .serviceKey(\"9876543210123456789\")\n .serviceName(\"testing_foo\")\n .build(), CustomResourceOptions.builder()\n .dependsOn(\"datadog_integration_pagerduty.pd\")\n .build());\n\n var testingBar = new ServiceObject(\"testingBar\", ServiceObjectArgs.builder() \n .serviceKey(\"54321098765432109876\")\n .serviceName(\"testing_bar\")\n .build(), CustomResourceOptions.builder()\n .dependsOn(\"datadog_integration_pagerduty.pd\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Services as Individual Resources\n pd:\n type: datadog:pagerduty:Integration\n properties:\n apiToken: '38457822378273432587234242874'\n schedules:\n - https://ddog.pagerduty.com/schedules/X123VF\n - https://ddog.pagerduty.com/schedules/X321XX\n subdomain: ddog\n testingFoo:\n type: datadog:pagerduty:ServiceObject\n properties:\n serviceKey: '9876543210123456789'\n serviceName: testing_foo\n options:\n dependson:\n - datadog_integration_pagerduty.pd\n testingBar:\n type: datadog:pagerduty:ServiceObject\n properties:\n serviceKey: '54321098765432109876'\n serviceName: testing_bar\n options:\n dependson:\n - datadog_integration_pagerduty.pd\n```\n{{% /example %}}\n{{% /examples %}}", "properties": { "apiToken": { "type": "string", @@ -39600,7 +39600,7 @@ "properties": { "serviceKey": { "type": "string", - "description": "Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts.\n", + "description": "Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated.\n", "secret": true }, "serviceName": { @@ -39615,7 +39615,7 @@ "inputProperties": { "serviceKey": { "type": "string", - "description": "Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts.\n", + "description": "Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated.\n", "secret": true }, "serviceName": { @@ -39633,7 +39633,7 @@ "properties": { "serviceKey": { "type": "string", - "description": "Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts.\n", + "description": "Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated.\n", "secret": true }, "serviceName": { @@ -39903,7 +39903,7 @@ } }, "datadog:index/getDashboardList:getDashboardList": { - "description": "Use this data source to retrieve information about an existing dashboard list, for use in other resources. In particular, it can be used in a dashboard to register it in the list.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst test = datadog.getDashboardList({\n name: \"My super list\",\n});\n// Create a dashboard and register it in the list above.\nconst time = new datadog.Dashboard(\"time\", {\n dashboardLists: [test.then(test =\u003e test.id)],\n description: \"Created using the Datadog provider in Terraform\",\n isReadOnly: true,\n layoutType: \"ordered\",\n title: \"TF Test Layout Dashboard\",\n widgets: [{\n alertGraphDefinition: {\n alertId: \"1234\",\n liveSpan: \"1h\",\n title: \"Widget Title\",\n vizType: \"timeseries\",\n },\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\ntest = datadog.get_dashboard_list(name=\"My super list\")\n# Create a dashboard and register it in the list above.\ntime = datadog.Dashboard(\"time\",\n dashboard_lists=[test.id],\n description=\"Created using the Datadog provider in Terraform\",\n is_read_only=True,\n layout_type=\"ordered\",\n title=\"TF Test Layout Dashboard\",\n widgets=[datadog.DashboardWidgetArgs(\n alert_graph_definition=datadog.DashboardWidgetAlertGraphDefinitionArgs(\n alert_id=\"1234\",\n live_span=\"1h\",\n title=\"Widget Title\",\n viz_type=\"timeseries\",\n ),\n )])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = Datadog.GetDashboardList.Invoke(new()\n {\n Name = \"My super list\",\n });\n\n // Create a dashboard and register it in the list above.\n var time = new Datadog.Dashboard(\"time\", new()\n {\n DashboardLists = new[]\n {\n test.Apply(getDashboardListResult =\u003e getDashboardListResult.Id),\n },\n Description = \"Created using the Datadog provider in Terraform\",\n IsReadOnly = true,\n LayoutType = \"ordered\",\n Title = \"TF Test Layout Dashboard\",\n Widgets = new[]\n {\n new Datadog.Inputs.DashboardWidgetArgs\n {\n AlertGraphDefinition = new Datadog.Inputs.DashboardWidgetAlertGraphDefinitionArgs\n {\n AlertId = \"1234\",\n LiveSpan = \"1h\",\n Title = \"Widget Title\",\n VizType = \"timeseries\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v4/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttest, err := datadog.LookupDashboardList(ctx, \u0026datadog.LookupDashboardListArgs{\n\t\t\tName: \"My super list\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = datadog.NewDashboard(ctx, \"time\", \u0026datadog.DashboardArgs{\n\t\t\tDashboardLists: pulumi.IntArray{\n\t\t\t\t*pulumi.String(test.Id),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"Created using the Datadog provider in Terraform\"),\n\t\t\tIsReadOnly: pulumi.Bool(true),\n\t\t\tLayoutType: pulumi.String(\"ordered\"),\n\t\t\tTitle: pulumi.String(\"TF Test Layout Dashboard\"),\n\t\t\tWidgets: datadog.DashboardWidgetArray{\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tAlertGraphDefinition: \u0026datadog.DashboardWidgetAlertGraphDefinitionArgs{\n\t\t\t\t\t\tAlertId: pulumi.String(\"1234\"),\n\t\t\t\t\t\tLiveSpan: pulumi.String(\"1h\"),\n\t\t\t\t\t\tTitle: pulumi.String(\"Widget Title\"),\n\t\t\t\t\t\tVizType: pulumi.String(\"timeseries\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.DatadogFunctions;\nimport com.pulumi.datadog.inputs.GetDashboardListArgs;\nimport com.pulumi.datadog.Dashboard;\nimport com.pulumi.datadog.DashboardArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetAlertGraphDefinitionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var test = DatadogFunctions.getDashboardList(GetDashboardListArgs.builder()\n .name(\"My super list\")\n .build());\n\n var time = new Dashboard(\"time\", DashboardArgs.builder() \n .dashboardLists(test.applyValue(getDashboardListResult -\u003e getDashboardListResult.id()))\n .description(\"Created using the Datadog provider in Terraform\")\n .isReadOnly(true)\n .layoutType(\"ordered\")\n .title(\"TF Test Layout Dashboard\")\n .widgets(DashboardWidgetArgs.builder()\n .alertGraphDefinition(DashboardWidgetAlertGraphDefinitionArgs.builder()\n .alertId(\"1234\")\n .liveSpan(\"1h\")\n .title(\"Widget Title\")\n .vizType(\"timeseries\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a dashboard and register it in the list above.\n time:\n type: datadog:Dashboard\n properties:\n dashboardLists:\n - ${test.id}\n description: Created using the Datadog provider in Terraform\n isReadOnly: true\n layoutType: ordered\n title: TF Test Layout Dashboard\n widgets:\n - alertGraphDefinition:\n alertId: '1234'\n liveSpan: 1h\n title: Widget Title\n vizType: timeseries\nvariables:\n test:\n fn::invoke:\n Function: datadog:getDashboardList\n Arguments:\n name: My super list\n```\n{{% /example %}}\n{{% /examples %}}", + "description": "Use this data source to retrieve information about an existing dashboard list, for use in other resources. In particular, it can be used in a dashboard to register it in the list.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst test = datadog.getDashboardList({\n name: \"My super list\",\n});\n// Create a dashboard and register it in the list above.\nconst time = new datadog.Dashboard(\"time\", {\n dashboardLists: [test.then(test =\u003e test.id)],\n description: \"Created using the Datadog provider in Pulumi\",\n isReadOnly: true,\n layoutType: \"ordered\",\n title: \"TF Test Layout Dashboard\",\n widgets: [{\n alertGraphDefinition: {\n alertId: \"1234\",\n liveSpan: \"1h\",\n title: \"Widget Title\",\n vizType: \"timeseries\",\n },\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\ntest = datadog.get_dashboard_list(name=\"My super list\")\n# Create a dashboard and register it in the list above.\ntime = datadog.Dashboard(\"time\",\n dashboard_lists=[test.id],\n description=\"Created using the Datadog provider in Pulumi\",\n is_read_only=True,\n layout_type=\"ordered\",\n title=\"TF Test Layout Dashboard\",\n widgets=[datadog.DashboardWidgetArgs(\n alert_graph_definition=datadog.DashboardWidgetAlertGraphDefinitionArgs(\n alert_id=\"1234\",\n live_span=\"1h\",\n title=\"Widget Title\",\n viz_type=\"timeseries\",\n ),\n )])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = Datadog.GetDashboardList.Invoke(new()\n {\n Name = \"My super list\",\n });\n\n // Create a dashboard and register it in the list above.\n var time = new Datadog.Dashboard(\"time\", new()\n {\n DashboardLists = new[]\n {\n test.Apply(getDashboardListResult =\u003e getDashboardListResult.Id),\n },\n Description = \"Created using the Datadog provider in Pulumi\",\n IsReadOnly = true,\n LayoutType = \"ordered\",\n Title = \"TF Test Layout Dashboard\",\n Widgets = new[]\n {\n new Datadog.Inputs.DashboardWidgetArgs\n {\n AlertGraphDefinition = new Datadog.Inputs.DashboardWidgetAlertGraphDefinitionArgs\n {\n AlertId = \"1234\",\n LiveSpan = \"1h\",\n Title = \"Widget Title\",\n VizType = \"timeseries\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v4/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttest, err := datadog.LookupDashboardList(ctx, \u0026datadog.LookupDashboardListArgs{\n\t\t\tName: \"My super list\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = datadog.NewDashboard(ctx, \"time\", \u0026datadog.DashboardArgs{\n\t\t\tDashboardLists: pulumi.IntArray{\n\t\t\t\t*pulumi.String(test.Id),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"Created using the Datadog provider in Pulumi\"),\n\t\t\tIsReadOnly: pulumi.Bool(true),\n\t\t\tLayoutType: pulumi.String(\"ordered\"),\n\t\t\tTitle: pulumi.String(\"TF Test Layout Dashboard\"),\n\t\t\tWidgets: datadog.DashboardWidgetArray{\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tAlertGraphDefinition: \u0026datadog.DashboardWidgetAlertGraphDefinitionArgs{\n\t\t\t\t\t\tAlertId: pulumi.String(\"1234\"),\n\t\t\t\t\t\tLiveSpan: pulumi.String(\"1h\"),\n\t\t\t\t\t\tTitle: pulumi.String(\"Widget Title\"),\n\t\t\t\t\t\tVizType: pulumi.String(\"timeseries\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.DatadogFunctions;\nimport com.pulumi.datadog.inputs.GetDashboardListArgs;\nimport com.pulumi.datadog.Dashboard;\nimport com.pulumi.datadog.DashboardArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetAlertGraphDefinitionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var test = DatadogFunctions.getDashboardList(GetDashboardListArgs.builder()\n .name(\"My super list\")\n .build());\n\n var time = new Dashboard(\"time\", DashboardArgs.builder() \n .dashboardLists(test.applyValue(getDashboardListResult -\u003e getDashboardListResult.id()))\n .description(\"Created using the Datadog provider in Pulumi\")\n .isReadOnly(true)\n .layoutType(\"ordered\")\n .title(\"TF Test Layout Dashboard\")\n .widgets(DashboardWidgetArgs.builder()\n .alertGraphDefinition(DashboardWidgetAlertGraphDefinitionArgs.builder()\n .alertId(\"1234\")\n .liveSpan(\"1h\")\n .title(\"Widget Title\")\n .vizType(\"timeseries\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n # Create a dashboard and register it in the list above.\n time:\n type: datadog:Dashboard\n properties:\n dashboardLists:\n - ${test.id}\n description: Created using the Datadog provider in Pulumi\n isReadOnly: true\n layoutType: ordered\n title: TF Test Layout Dashboard\n widgets:\n - alertGraphDefinition:\n alertId: '1234'\n liveSpan: 1h\n title: Widget Title\n vizType: timeseries\nvariables:\n test:\n fn::invoke:\n Function: datadog:getDashboardList\n Arguments:\n name: My super list\n```\n{{% /example %}}\n{{% /examples %}}", "inputs": { "description": "A collection of arguments for invoking getDashboardList.\n", "properties": { diff --git a/provider/resources.go b/provider/resources.go index 6b3258f22..b8d9a695a 100644 --- a/provider/resources.go +++ b/provider/resources.go @@ -2,6 +2,7 @@ package datadog import ( // Allow embedding files + "bytes" "context" _ "embed" "fmt" @@ -81,6 +82,7 @@ func Provider() tfbridge.ProviderInfo { MetadataInfo: tfbridge.NewProviderMetadata(metadata), Version: version.Version, UpstreamRepoPath: "./upstream", + DocRules: &tfbridge.DocRuleInfo{EditRules: docEditRules}, Resources: map[string]*tfbridge.ResourceInfo{ "datadog_dashboard": {Tok: makeResource(datadogMod, "Dashboard")}, "datadog_downtime": {Tok: makeResource(datadogMod, "Downtime")}, @@ -259,3 +261,15 @@ func Provider() tfbridge.ProviderInfo { return prov } + +func docEditRules(defaults []tfbridge.DocsEdit) []tfbridge.DocsEdit { + return append(defaults, tfbridge.DocsEdit{ + Path: "*", + Edit: func(_ string, b []byte) ([]byte, error) { + b = bytes.ReplaceAll(b, + []byte("Created using the Datadog provider in Terraform"), + []byte("Created using the Datadog provider in Pulumi")) + return b, nil + }, + }) +} diff --git a/sdk/dotnet/DashboardJson.cs b/sdk/dotnet/DashboardJson.cs index 92cb8fa1f..172789077 100644 --- a/sdk/dotnet/DashboardJson.cs +++ b/sdk/dotnet/DashboardJson.cs @@ -27,7 +27,7 @@ namespace Pulumi.Datadog /// { /// Dashboard = @"{ /// ""title"":""Ordered Layout Dashboard"", - /// ""description"":""Created using the Datadog provider in Terraform"", + /// ""description"":""Created using the Datadog provider in Pulumi"", /// ""widgets"":[ /// { /// ""id"":719369537777170, diff --git a/sdk/dotnet/DashboardList.cs b/sdk/dotnet/DashboardList.cs index 9c60b9696..26181251a 100644 --- a/sdk/dotnet/DashboardList.cs +++ b/sdk/dotnet/DashboardList.cs @@ -25,7 +25,7 @@ namespace Pulumi.Datadog /// var time = new Datadog.Dashboard("time", new() /// { /// Title = "TF Test Layout Dashboard", - /// Description = "Created using the Datadog provider", + /// Description = "Created using the Datadog provider in Pulumi", /// LayoutType = "ordered", /// IsReadOnly = true, /// Widgets = new[] @@ -46,7 +46,7 @@ namespace Pulumi.Datadog /// var screen = new Datadog.Dashboard("screen", new() /// { /// Title = "TF Test Free Layout Dashboard", - /// Description = "Created using the Datadog provider", + /// Description = "Created using the Datadog provider in Pulumi", /// LayoutType = "free", /// IsReadOnly = false, /// Widgets = new[] diff --git a/sdk/dotnet/GetDashboardList.cs b/sdk/dotnet/GetDashboardList.cs index 361998a94..4cc836bb2 100644 --- a/sdk/dotnet/GetDashboardList.cs +++ b/sdk/dotnet/GetDashboardList.cs @@ -38,7 +38,7 @@ public static class GetDashboardList /// { /// test.Apply(getDashboardListResult => getDashboardListResult.Id), /// }, - /// Description = "Created using the Datadog provider in Terraform", + /// Description = "Created using the Datadog provider in Pulumi", /// IsReadOnly = true, /// LayoutType = "ordered", /// Title = "TF Test Layout Dashboard", @@ -92,7 +92,7 @@ public static Task InvokeAsync(GetDashboardListArgs args /// { /// test.Apply(getDashboardListResult => getDashboardListResult.Id), /// }, - /// Description = "Created using the Datadog provider in Terraform", + /// Description = "Created using the Datadog provider in Pulumi", /// IsReadOnly = true, /// LayoutType = "ordered", /// Title = "TF Test Layout Dashboard", diff --git a/sdk/dotnet/PagerDuty/Integration.cs b/sdk/dotnet/PagerDuty/Integration.cs index a3177e24f..5768f322e 100644 --- a/sdk/dotnet/PagerDuty/Integration.cs +++ b/sdk/dotnet/PagerDuty/Integration.cs @@ -22,6 +22,7 @@ namespace Pulumi.Datadog.PagerDuty /// /// return await Deployment.RunAsync(() => /// { + /// // Services as Individual Resources /// var pd = new Datadog.PagerDuty.Integration("pd", new() /// { /// ApiToken = "38457822378273432587234242874", diff --git a/sdk/dotnet/PagerDuty/ServiceObject.cs b/sdk/dotnet/PagerDuty/ServiceObject.cs index 2c9fe20b2..c8a215c63 100644 --- a/sdk/dotnet/PagerDuty/ServiceObject.cs +++ b/sdk/dotnet/PagerDuty/ServiceObject.cs @@ -41,7 +41,7 @@ namespace Pulumi.Datadog.PagerDuty public partial class ServiceObject : global::Pulumi.CustomResource { /// - /// Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts. + /// Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated. /// [Output("serviceKey")] public Output ServiceKey { get; private set; } = null!; @@ -106,7 +106,7 @@ public sealed class ServiceObjectArgs : global::Pulumi.ResourceArgs private Input? _serviceKey; /// - /// Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts. + /// Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated. /// public Input? ServiceKey { @@ -136,7 +136,7 @@ public sealed class ServiceObjectState : global::Pulumi.ResourceArgs private Input? _serviceKey; /// - /// Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts. + /// Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated. /// public Input? ServiceKey { diff --git a/sdk/go/datadog/dashboardJson.go b/sdk/go/datadog/dashboardJson.go index e9897850d..579ab53d7 100644 --- a/sdk/go/datadog/dashboardJson.go +++ b/sdk/go/datadog/dashboardJson.go @@ -32,7 +32,7 @@ import ( // _, err := datadog.NewDashboardJson(ctx, "dashboardJson", &datadog.DashboardJsonArgs{ // Dashboard: pulumi.String(`{ // "title":"Ordered Layout Dashboard", -// "description":"Created using the Datadog provider in Terraform", +// "description":"Created using the Datadog provider in Pulumi", // "widgets":[ // { // "id":719369537777170, diff --git a/sdk/go/datadog/dashboardList.go b/sdk/go/datadog/dashboardList.go index eb0614821..a1dae34ca 100644 --- a/sdk/go/datadog/dashboardList.go +++ b/sdk/go/datadog/dashboardList.go @@ -31,7 +31,7 @@ import ( // pulumi.Run(func(ctx *pulumi.Context) error { // time, err := datadog.NewDashboard(ctx, "time", &datadog.DashboardArgs{ // Title: pulumi.String("TF Test Layout Dashboard"), -// Description: pulumi.String("Created using the Datadog provider"), +// Description: pulumi.String("Created using the Datadog provider in Pulumi"), // LayoutType: pulumi.String("ordered"), // IsReadOnly: pulumi.Bool(true), // Widgets: datadog.DashboardWidgetArray{ @@ -50,7 +50,7 @@ import ( // } // screen, err := datadog.NewDashboard(ctx, "screen", &datadog.DashboardArgs{ // Title: pulumi.String("TF Test Free Layout Dashboard"), -// Description: pulumi.String("Created using the Datadog provider"), +// Description: pulumi.String("Created using the Datadog provider in Pulumi"), // LayoutType: pulumi.String("free"), // IsReadOnly: pulumi.Bool(false), // Widgets: datadog.DashboardWidgetArray{ diff --git a/sdk/go/datadog/getDashboardList.go b/sdk/go/datadog/getDashboardList.go index 43c90c366..1bec8dceb 100644 --- a/sdk/go/datadog/getDashboardList.go +++ b/sdk/go/datadog/getDashboardList.go @@ -38,7 +38,7 @@ import ( // DashboardLists: pulumi.IntArray{ // *pulumi.String(test.Id), // }, -// Description: pulumi.String("Created using the Datadog provider in Terraform"), +// Description: pulumi.String("Created using the Datadog provider in Pulumi"), // IsReadOnly: pulumi.Bool(true), // LayoutType: pulumi.String("ordered"), // Title: pulumi.String("TF Test Layout Dashboard"), diff --git a/sdk/go/datadog/pagerduty/serviceObject.go b/sdk/go/datadog/pagerduty/serviceObject.go index 879ff8566..79c2e7ac0 100644 --- a/sdk/go/datadog/pagerduty/serviceObject.go +++ b/sdk/go/datadog/pagerduty/serviceObject.go @@ -51,7 +51,7 @@ import ( type ServiceObject struct { pulumi.CustomResourceState - // Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts. + // Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated. ServiceKey pulumi.StringOutput `pulumi:"serviceKey"` // Your Service name in PagerDuty. ServiceName pulumi.StringOutput `pulumi:"serviceName"` @@ -100,14 +100,14 @@ func GetServiceObject(ctx *pulumi.Context, // Input properties used for looking up and filtering ServiceObject resources. type serviceObjectState struct { - // Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts. + // Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated. ServiceKey *string `pulumi:"serviceKey"` // Your Service name in PagerDuty. ServiceName *string `pulumi:"serviceName"` } type ServiceObjectState struct { - // Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts. + // Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated. ServiceKey pulumi.StringPtrInput // Your Service name in PagerDuty. ServiceName pulumi.StringPtrInput @@ -118,7 +118,7 @@ func (ServiceObjectState) ElementType() reflect.Type { } type serviceObjectArgs struct { - // Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts. + // Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated. ServiceKey string `pulumi:"serviceKey"` // Your Service name in PagerDuty. ServiceName string `pulumi:"serviceName"` @@ -126,7 +126,7 @@ type serviceObjectArgs struct { // The set of arguments for constructing a ServiceObject resource. type ServiceObjectArgs struct { - // Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts. + // Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated. ServiceKey pulumi.StringInput // Your Service name in PagerDuty. ServiceName pulumi.StringInput @@ -243,7 +243,7 @@ func (o ServiceObjectOutput) ToOutput(ctx context.Context) pulumix.Output[*Servi } } -// Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts. +// Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated. func (o ServiceObjectOutput) ServiceKey() pulumi.StringOutput { return o.ApplyT(func(v *ServiceObject) pulumi.StringOutput { return v.ServiceKey }).(pulumi.StringOutput) } diff --git a/sdk/java/src/main/java/com/pulumi/datadog/Dashboard.java b/sdk/java/src/main/java/com/pulumi/datadog/Dashboard.java index 18170202e..08009f74f 100644 --- a/sdk/java/src/main/java/com/pulumi/datadog/Dashboard.java +++ b/sdk/java/src/main/java/com/pulumi/datadog/Dashboard.java @@ -83,7 +83,7 @@ * * public static void stack(Context ctx) { * var orderedDashboard = new Dashboard("orderedDashboard", DashboardArgs.builder() - * .description("Created using the Datadog provider in Terraform") + * .description("Created using the Datadog provider in Pulumi") * .isReadOnly(true) * .layoutType("ordered") * .templateVariables( @@ -323,7 +323,7 @@ * .build()); * * var freeDashboard = new Dashboard("freeDashboard", DashboardArgs.builder() - * .description("Created using the Datadog provider in Terraform") + * .description("Created using the Datadog provider in Pulumi") * .isReadOnly(false) * .layoutType("free") * .templateVariables( diff --git a/sdk/java/src/main/java/com/pulumi/datadog/DashboardJson.java b/sdk/java/src/main/java/com/pulumi/datadog/DashboardJson.java index 4ddf1cbe7..86055da50 100644 --- a/sdk/java/src/main/java/com/pulumi/datadog/DashboardJson.java +++ b/sdk/java/src/main/java/com/pulumi/datadog/DashboardJson.java @@ -45,7 +45,7 @@ * .dashboard(""" * { * "title":"Ordered Layout Dashboard", - * "description":"Created using the Datadog provider in Terraform", + * "description":"Created using the Datadog provider in Pulumi", * "widgets":[ * { * "id":719369537777170, diff --git a/sdk/java/src/main/java/com/pulumi/datadog/DashboardList.java b/sdk/java/src/main/java/com/pulumi/datadog/DashboardList.java index 7a28cf075..b5d6e6b76 100644 --- a/sdk/java/src/main/java/com/pulumi/datadog/DashboardList.java +++ b/sdk/java/src/main/java/com/pulumi/datadog/DashboardList.java @@ -51,7 +51,7 @@ * public static void stack(Context ctx) { * var time = new Dashboard("time", DashboardArgs.builder() * .title("TF Test Layout Dashboard") - * .description("Created using the Datadog provider") + * .description("Created using the Datadog provider in Pulumi") * .layoutType("ordered") * .isReadOnly(true) * .widgets(DashboardWidgetArgs.builder() @@ -66,7 +66,7 @@ * * var screen = new Dashboard("screen", DashboardArgs.builder() * .title("TF Test Free Layout Dashboard") - * .description("Created using the Datadog provider") + * .description("Created using the Datadog provider in Pulumi") * .layoutType("free") * .isReadOnly(false) * .widgets(DashboardWidgetArgs.builder() diff --git a/sdk/java/src/main/java/com/pulumi/datadog/DatadogFunctions.java b/sdk/java/src/main/java/com/pulumi/datadog/DatadogFunctions.java index 135e3f181..9a87a4635 100644 --- a/sdk/java/src/main/java/com/pulumi/datadog/DatadogFunctions.java +++ b/sdk/java/src/main/java/com/pulumi/datadog/DatadogFunctions.java @@ -918,7 +918,7 @@ public static CompletableFuture getDashboardPlain(GetDashboa * * var time = new Dashboard("time", DashboardArgs.builder() * .dashboardLists(test.applyValue(getDashboardListResult -> getDashboardListResult.id())) - * .description("Created using the Datadog provider in Terraform") + * .description("Created using the Datadog provider in Pulumi") * .isReadOnly(true) * .layoutType("ordered") * .title("TF Test Layout Dashboard") @@ -975,7 +975,7 @@ public static Output getDashboardList(GetDashboardListAr * * var time = new Dashboard("time", DashboardArgs.builder() * .dashboardLists(test.applyValue(getDashboardListResult -> getDashboardListResult.id())) - * .description("Created using the Datadog provider in Terraform") + * .description("Created using the Datadog provider in Pulumi") * .isReadOnly(true) * .layoutType("ordered") * .title("TF Test Layout Dashboard") @@ -1032,7 +1032,7 @@ public static CompletableFuture getDashboardListPlain(Ge * * var time = new Dashboard("time", DashboardArgs.builder() * .dashboardLists(test.applyValue(getDashboardListResult -> getDashboardListResult.id())) - * .description("Created using the Datadog provider in Terraform") + * .description("Created using the Datadog provider in Pulumi") * .isReadOnly(true) * .layoutType("ordered") * .title("TF Test Layout Dashboard") @@ -1089,7 +1089,7 @@ public static Output getDashboardList(GetDashboardListAr * * var time = new Dashboard("time", DashboardArgs.builder() * .dashboardLists(test.applyValue(getDashboardListResult -> getDashboardListResult.id())) - * .description("Created using the Datadog provider in Terraform") + * .description("Created using the Datadog provider in Pulumi") * .isReadOnly(true) * .layoutType("ordered") * .title("TF Test Layout Dashboard") diff --git a/sdk/java/src/main/java/com/pulumi/datadog/pagerduty/ServiceObject.java b/sdk/java/src/main/java/com/pulumi/datadog/pagerduty/ServiceObject.java index 56b036655..1e2dce996 100644 --- a/sdk/java/src/main/java/com/pulumi/datadog/pagerduty/ServiceObject.java +++ b/sdk/java/src/main/java/com/pulumi/datadog/pagerduty/ServiceObject.java @@ -57,14 +57,14 @@ @ResourceType(type="datadog:pagerduty/serviceObject:ServiceObject") public class ServiceObject extends com.pulumi.resources.CustomResource { /** - * Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts. + * Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated. * */ @Export(name="serviceKey", refs={String.class}, tree="[0]") private Output serviceKey; /** - * @return Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts. + * @return Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated. * */ public Output serviceKey() { diff --git a/sdk/java/src/main/java/com/pulumi/datadog/pagerduty/ServiceObjectArgs.java b/sdk/java/src/main/java/com/pulumi/datadog/pagerduty/ServiceObjectArgs.java index cd068f38d..c57dbc110 100644 --- a/sdk/java/src/main/java/com/pulumi/datadog/pagerduty/ServiceObjectArgs.java +++ b/sdk/java/src/main/java/com/pulumi/datadog/pagerduty/ServiceObjectArgs.java @@ -14,14 +14,14 @@ public final class ServiceObjectArgs extends com.pulumi.resources.ResourceArgs { public static final ServiceObjectArgs Empty = new ServiceObjectArgs(); /** - * Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts. + * Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated. * */ @Import(name="serviceKey", required=true) private Output serviceKey; /** - * @return Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts. + * @return Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated. * */ public Output serviceKey() { @@ -69,7 +69,7 @@ public Builder(ServiceObjectArgs defaults) { } /** - * @param serviceKey Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts. + * @param serviceKey Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated. * * @return builder * @@ -80,7 +80,7 @@ public Builder serviceKey(Output serviceKey) { } /** - * @param serviceKey Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts. + * @param serviceKey Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/datadog/pagerduty/inputs/ServiceObjectState.java b/sdk/java/src/main/java/com/pulumi/datadog/pagerduty/inputs/ServiceObjectState.java index 31555f44e..873392159 100644 --- a/sdk/java/src/main/java/com/pulumi/datadog/pagerduty/inputs/ServiceObjectState.java +++ b/sdk/java/src/main/java/com/pulumi/datadog/pagerduty/inputs/ServiceObjectState.java @@ -16,14 +16,14 @@ public final class ServiceObjectState extends com.pulumi.resources.ResourceArgs public static final ServiceObjectState Empty = new ServiceObjectState(); /** - * Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts. + * Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated. * */ @Import(name="serviceKey") private @Nullable Output serviceKey; /** - * @return Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts. + * @return Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated. * */ public Optional> serviceKey() { @@ -71,7 +71,7 @@ public Builder(ServiceObjectState defaults) { } /** - * @param serviceKey Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts. + * @param serviceKey Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated. * * @return builder * @@ -82,7 +82,7 @@ public Builder serviceKey(@Nullable Output serviceKey) { } /** - * @param serviceKey Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts. + * @param serviceKey Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated. * * @return builder * diff --git a/sdk/nodejs/dashboardJson.ts b/sdk/nodejs/dashboardJson.ts index 7203c6eb1..cd4aa3ae1 100644 --- a/sdk/nodejs/dashboardJson.ts +++ b/sdk/nodejs/dashboardJson.ts @@ -16,7 +16,7 @@ import * as utilities from "./utilities"; * // Example Dashboard JSON * const dashboardJson = new datadog.DashboardJson("dashboardJson", {dashboard: `{ * "title":"Ordered Layout Dashboard", - * "description":"Created using the Datadog provider in Terraform", + * "description":"Created using the Datadog provider in Pulumi", * "widgets":[ * { * "id":719369537777170, diff --git a/sdk/nodejs/dashboardList.ts b/sdk/nodejs/dashboardList.ts index eaeb393fc..7c76f75d0 100644 --- a/sdk/nodejs/dashboardList.ts +++ b/sdk/nodejs/dashboardList.ts @@ -17,7 +17,7 @@ import * as utilities from "./utilities"; * * const time = new datadog.Dashboard("time", { * title: "TF Test Layout Dashboard", - * description: "Created using the Datadog provider", + * description: "Created using the Datadog provider in Pulumi", * layoutType: "ordered", * isReadOnly: true, * widgets: [{ @@ -31,7 +31,7 @@ import * as utilities from "./utilities"; * }); * const screen = new datadog.Dashboard("screen", { * title: "TF Test Free Layout Dashboard", - * description: "Created using the Datadog provider", + * description: "Created using the Datadog provider in Pulumi", * layoutType: "free", * isReadOnly: false, * widgets: [{ diff --git a/sdk/nodejs/getDashboardList.ts b/sdk/nodejs/getDashboardList.ts index e20b51be4..4783ae6bc 100644 --- a/sdk/nodejs/getDashboardList.ts +++ b/sdk/nodejs/getDashboardList.ts @@ -19,7 +19,7 @@ import * as utilities from "./utilities"; * // Create a dashboard and register it in the list above. * const time = new datadog.Dashboard("time", { * dashboardLists: [test.then(test => test.id)], - * description: "Created using the Datadog provider in Terraform", + * description: "Created using the Datadog provider in Pulumi", * isReadOnly: true, * layoutType: "ordered", * title: "TF Test Layout Dashboard", @@ -80,7 +80,7 @@ export interface GetDashboardListResult { * // Create a dashboard and register it in the list above. * const time = new datadog.Dashboard("time", { * dashboardLists: [test.then(test => test.id)], - * description: "Created using the Datadog provider in Terraform", + * description: "Created using the Datadog provider in Pulumi", * isReadOnly: true, * layoutType: "ordered", * title: "TF Test Layout Dashboard", diff --git a/sdk/nodejs/pagerduty/integration.ts b/sdk/nodejs/pagerduty/integration.ts index 2ee317331..62bdb28fe 100644 --- a/sdk/nodejs/pagerduty/integration.ts +++ b/sdk/nodejs/pagerduty/integration.ts @@ -13,6 +13,7 @@ import * as utilities from "../utilities"; * import * as pulumi from "@pulumi/pulumi"; * import * as datadog from "@pulumi/datadog"; * + * // Services as Individual Resources * const pd = new datadog.pagerduty.Integration("pd", { * apiToken: "38457822378273432587234242874", * schedules: [ diff --git a/sdk/nodejs/pagerduty/serviceObject.ts b/sdk/nodejs/pagerduty/serviceObject.ts index b087603e4..a0b5151f0 100644 --- a/sdk/nodejs/pagerduty/serviceObject.ts +++ b/sdk/nodejs/pagerduty/serviceObject.ts @@ -52,7 +52,7 @@ export class ServiceObject extends pulumi.CustomResource { } /** - * Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts. + * Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated. */ public readonly serviceKey!: pulumi.Output; /** @@ -98,7 +98,7 @@ export class ServiceObject extends pulumi.CustomResource { */ export interface ServiceObjectState { /** - * Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts. + * Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated. */ serviceKey?: pulumi.Input; /** @@ -112,7 +112,7 @@ export interface ServiceObjectState { */ export interface ServiceObjectArgs { /** - * Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts. + * Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated. */ serviceKey: pulumi.Input; /** diff --git a/sdk/python/pulumi_datadog/dashboard_json.py b/sdk/python/pulumi_datadog/dashboard_json.py index d03e386aa..97195e479 100644 --- a/sdk/python/pulumi_datadog/dashboard_json.py +++ b/sdk/python/pulumi_datadog/dashboard_json.py @@ -191,7 +191,7 @@ def __init__(__self__, # Example Dashboard JSON dashboard_json = datadog.DashboardJson("dashboardJson", dashboard=\"\"\"{ "title":"Ordered Layout Dashboard", - "description":"Created using the Datadog provider in Terraform", + "description":"Created using the Datadog provider in Pulumi", "widgets":[ { "id":719369537777170, @@ -709,7 +709,7 @@ def __init__(__self__, # Example Dashboard JSON dashboard_json = datadog.DashboardJson("dashboardJson", dashboard=\"\"\"{ "title":"Ordered Layout Dashboard", - "description":"Created using the Datadog provider in Terraform", + "description":"Created using the Datadog provider in Pulumi", "widgets":[ { "id":719369537777170, diff --git a/sdk/python/pulumi_datadog/dashboard_list.py b/sdk/python/pulumi_datadog/dashboard_list.py index f689077a9..2fef0196a 100644 --- a/sdk/python/pulumi_datadog/dashboard_list.py +++ b/sdk/python/pulumi_datadog/dashboard_list.py @@ -133,7 +133,7 @@ def __init__(__self__, time = datadog.Dashboard("time", title="TF Test Layout Dashboard", - description="Created using the Datadog provider", + description="Created using the Datadog provider in Pulumi", layout_type="ordered", is_read_only=True, widgets=[datadog.DashboardWidgetArgs( @@ -146,7 +146,7 @@ def __init__(__self__, )]) screen = datadog.Dashboard("screen", title="TF Test Free Layout Dashboard", - description="Created using the Datadog provider", + description="Created using the Datadog provider in Pulumi", layout_type="free", is_read_only=False, widgets=[datadog.DashboardWidgetArgs( @@ -212,7 +212,7 @@ def __init__(__self__, time = datadog.Dashboard("time", title="TF Test Layout Dashboard", - description="Created using the Datadog provider", + description="Created using the Datadog provider in Pulumi", layout_type="ordered", is_read_only=True, widgets=[datadog.DashboardWidgetArgs( @@ -225,7 +225,7 @@ def __init__(__self__, )]) screen = datadog.Dashboard("screen", title="TF Test Free Layout Dashboard", - description="Created using the Datadog provider", + description="Created using the Datadog provider in Pulumi", layout_type="free", is_read_only=False, widgets=[datadog.DashboardWidgetArgs( diff --git a/sdk/python/pulumi_datadog/get_dashboard_list.py b/sdk/python/pulumi_datadog/get_dashboard_list.py index aa5049b99..10fbcd380 100644 --- a/sdk/python/pulumi_datadog/get_dashboard_list.py +++ b/sdk/python/pulumi_datadog/get_dashboard_list.py @@ -71,7 +71,7 @@ def get_dashboard_list(name: Optional[str] = None, # Create a dashboard and register it in the list above. time = datadog.Dashboard("time", dashboard_lists=[test.id], - description="Created using the Datadog provider in Terraform", + description="Created using the Datadog provider in Pulumi", is_read_only=True, layout_type="ordered", title="TF Test Layout Dashboard", @@ -114,7 +114,7 @@ def get_dashboard_list_output(name: Optional[pulumi.Input[str]] = None, # Create a dashboard and register it in the list above. time = datadog.Dashboard("time", dashboard_lists=[test.id], - description="Created using the Datadog provider in Terraform", + description="Created using the Datadog provider in Pulumi", is_read_only=True, layout_type="ordered", title="TF Test Layout Dashboard", diff --git a/sdk/python/pulumi_datadog/pagerduty/integration.py b/sdk/python/pulumi_datadog/pagerduty/integration.py index 57240bf57..371c2538a 100644 --- a/sdk/python/pulumi_datadog/pagerduty/integration.py +++ b/sdk/python/pulumi_datadog/pagerduty/integration.py @@ -166,6 +166,7 @@ def __init__(__self__, import pulumi import pulumi_datadog as datadog + # Services as Individual Resources pd = datadog.pagerduty.Integration("pd", api_token="38457822378273432587234242874", schedules=[ @@ -204,6 +205,7 @@ def __init__(__self__, import pulumi import pulumi_datadog as datadog + # Services as Individual Resources pd = datadog.pagerduty.Integration("pd", api_token="38457822378273432587234242874", schedules=[ diff --git a/sdk/python/pulumi_datadog/pagerduty/service_object.py b/sdk/python/pulumi_datadog/pagerduty/service_object.py index d5f7dea14..aeb683931 100644 --- a/sdk/python/pulumi_datadog/pagerduty/service_object.py +++ b/sdk/python/pulumi_datadog/pagerduty/service_object.py @@ -18,7 +18,7 @@ def __init__(__self__, *, service_name: pulumi.Input[str]): """ The set of arguments for constructing a ServiceObject resource. - :param pulumi.Input[str] service_key: Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts. + :param pulumi.Input[str] service_key: Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated. :param pulumi.Input[str] service_name: Your Service name in PagerDuty. """ ServiceObjectArgs._configure( @@ -39,7 +39,7 @@ def _configure( @pulumi.getter(name="serviceKey") def service_key(self) -> pulumi.Input[str]: """ - Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts. + Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated. """ return pulumi.get(self, "service_key") @@ -67,7 +67,7 @@ def __init__(__self__, *, service_name: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering ServiceObject resources. - :param pulumi.Input[str] service_key: Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts. + :param pulumi.Input[str] service_key: Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated. :param pulumi.Input[str] service_name: Your Service name in PagerDuty. """ _ServiceObjectState._configure( @@ -90,7 +90,7 @@ def _configure( @pulumi.getter(name="serviceKey") def service_key(self) -> Optional[pulumi.Input[str]]: """ - Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts. + Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated. """ return pulumi.get(self, "service_key") @@ -138,7 +138,7 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] service_key: Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts. + :param pulumi.Input[str] service_key: Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated. :param pulumi.Input[str] service_name: Your Service name in PagerDuty. """ ... @@ -221,7 +221,7 @@ def get(resource_name: str, :param str resource_name: The unique name of the resulting resource. :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] service_key: Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts. + :param pulumi.Input[str] service_key: Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated. :param pulumi.Input[str] service_name: Your Service name in PagerDuty. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -236,7 +236,7 @@ def get(resource_name: str, @pulumi.getter(name="serviceKey") def service_key(self) -> pulumi.Output[str]: """ - Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts. + Your Service name associated service key in PagerDuty. Note: Since the Datadog API never returns service keys, it is impossible to detect drifts to have it destroyed and recreated. """ return pulumi.get(self, "service_key")