Dashboard

Provides a Datadog dashboard resource. This can be used to create and manage Datadog dashboards.

Example Usage

using Pulumi;
using Datadog = Pulumi.Datadog;

class MyStack : Stack
{
    public MyStack()
    {
        // Example Ordered Layout
        var orderedDashboard = new Datadog.Dashboard("orderedDashboard", new Datadog.DashboardArgs
        {
            Description = "Created using the Datadog provider in Terraform",
            IsReadOnly = true,
            LayoutType = "ordered",
            TemplateVariables = 
            {
                new Datadog.Inputs.DashboardTemplateVariableArgs
                {
                    Default = "aws",
                    Name = "var_1",
                    Prefix = "host",
                },
                new Datadog.Inputs.DashboardTemplateVariableArgs
                {
                    Default = "autoscaling",
                    Name = "var_2",
                    Prefix = "service_name",
                },
            },
            TemplateVariablePresets = 
            {
                new Datadog.Inputs.DashboardTemplateVariablePresetArgs
                {
                    Name = "preset_1",
                    TemplateVariables = 
                    {
                        new Datadog.Inputs.DashboardTemplateVariablePresetTemplateVariableArgs
                        {
                            Name = "var_1",
                            Value = "host.dc",
                        },
                        new Datadog.Inputs.DashboardTemplateVariablePresetTemplateVariableArgs
                        {
                            Name = "var_2",
                            Value = "my_service",
                        },
                    },
                },
            },
            Title = "Ordered Layout Dashboard",
            Widgets = 
            {
                new Datadog.Inputs.DashboardWidgetArgs
                {
                    AlertGraphDefinition = new Datadog.Inputs.DashboardWidgetAlertGraphDefinitionArgs
                    {
                        AlertId = "895605",
                        LiveSpan = "1h",
                        Title = "Widget Title",
                        VizType = "timeseries",
                    },
                },
                new Datadog.Inputs.DashboardWidgetArgs
                {
                    AlertValueDefinition = new Datadog.Inputs.DashboardWidgetAlertValueDefinitionArgs
                    {
                        AlertId = "895605",
                        Precision = 3,
                        TextAlign = "center",
                        Title = "Widget Title",
                        Unit = "b",
                    },
                },
                new Datadog.Inputs.DashboardWidgetArgs
                {
                    AlertValueDefinition = new Datadog.Inputs.DashboardWidgetAlertValueDefinitionArgs
                    {
                        AlertId = "895605",
                        Precision = 3,
                        TextAlign = "center",
                        Title = "Widget Title",
                        Unit = "b",
                    },
                },
                new Datadog.Inputs.DashboardWidgetArgs
                {
                    ChangeDefinition = new Datadog.Inputs.DashboardWidgetChangeDefinitionArgs
                    {
                        LiveSpan = "1h",
                        Request = 
                        {
                            
                            {
                                { "changeType", "absolute" },
                                { "compareTo", "week_before" },
                                { "increaseGood", true },
                                { "orderBy", "name" },
                                { "orderDir", "desc" },
                                { "q", "avg:system.load.1{env:staging} by {account}" },
                                { "showPresent", true },
                            },
                        },
                        Title = "Widget Title",
                    },
                },
                new Datadog.Inputs.DashboardWidgetArgs
                {
                    DistributionDefinition = new Datadog.Inputs.DashboardWidgetDistributionDefinitionArgs
                    {
                        LiveSpan = "1h",
                        Request = 
                        {
                            
                            {
                                { "q", "avg:system.load.1{env:staging} by {account}" },
                                { "style", 
                                {
                                    { "palette", "warm" },
                                } },
                            },
                        },
                        Title = "Widget Title",
                    },
                },
                new Datadog.Inputs.DashboardWidgetArgs
                {
                    CheckStatusDefinition = new Datadog.Inputs.DashboardWidgetCheckStatusDefinitionArgs
                    {
                        Check = "aws.ecs.agent_connected",
                        GroupBy = 
                        {
                            "account",
                            "cluster",
                        },
                        Grouping = "cluster",
                        LiveSpan = "1h",
                        Tags = 
                        {
                            "account:demo",
                            "cluster:awseb-ruthebdog-env-8-dn3m6u3gvk",
                        },
                        Title = "Widget Title",
                    },
                },
                new Datadog.Inputs.DashboardWidgetArgs
                {
                    HeatmapDefinition = new Datadog.Inputs.DashboardWidgetHeatmapDefinitionArgs
                    {
                        LiveSpan = "1h",
                        Request = 
                        {
                            
                            {
                                { "q", "avg:system.load.1{env:staging} by {account}" },
                                { "style", 
                                {
                                    { "palette", "warm" },
                                } },
                            },
                        },
                        Title = "Widget Title",
                        Yaxis = new Datadog.Inputs.DashboardWidgetHeatmapDefinitionYaxisArgs
                        {
                            IncludeZero = true,
                            Max = "2",
                            Min = "1",
                            Scale = "sqrt",
                        },
                    },
                },
                new Datadog.Inputs.DashboardWidgetArgs
                {
                    HostmapDefinition = new Datadog.Inputs.DashboardWidgetHostmapDefinitionArgs
                    {
                        Group = 
                        {
                            "host",
                            "region",
                        },
                        NoGroupHosts = true,
                        NoMetricHosts = true,
                        NodeType = "container",
                        Request = new Datadog.Inputs.DashboardWidgetHostmapDefinitionRequestArgs
                        {
                            Fill = 
                            {
                                
                                {
                                    { "q", "avg:system.load.1{*} by {host}" },
                                },
                            },
                            Size = 
                            {
                                
                                {
                                    { "q", "avg:memcache.uptime{*} by {host}" },
                                },
                            },
                        },
                        Scope = 
                        {
                            "region:us-east-1",
                            "aws_account:727006795293",
                        },
                        Style = new Datadog.Inputs.DashboardWidgetHostmapDefinitionStyleArgs
                        {
                            FillMax = "20",
                            FillMin = "10",
                            Palette = "yellow_to_green",
                            PaletteFlip = true,
                        },
                        Title = "Widget Title",
                    },
                },
                new Datadog.Inputs.DashboardWidgetArgs
                {
                    NoteDefinition = new Datadog.Inputs.DashboardWidgetNoteDefinitionArgs
                    {
                        BackgroundColor = "pink",
                        Content = "note text",
                        FontSize = "14",
                        ShowTick = true,
                        TextAlign = "center",
                        TickEdge = "left",
                        TickPos = "50%",
                    },
                },
                new Datadog.Inputs.DashboardWidgetArgs
                {
                    QueryValueDefinition = new Datadog.Inputs.DashboardWidgetQueryValueDefinitionArgs
                    {
                        Autoscale = true,
                        CustomUnit = "xx",
                        LiveSpan = "1h",
                        Precision = 4,
                        Request = 
                        {
                            
                            {
                                { "aggregator", "sum" },
                                { "conditionalFormats", 
                                {
                                    
                                    {
                                        { "comparator", "<" },
                                        { "palette", "white_on_green" },
                                        { "value", "2" },
                                    },
                                    
                                    {
                                        { "comparator", ">" },
                                        { "palette", "white_on_red" },
                                        { "value", "2.2" },
                                    },
                                } },
                                { "q", "avg:system.load.1{env:staging} by {account}" },
                            },
                        },
                        TextAlign = "right",
                        Title = "Widget Title",
                    },
                },
                new Datadog.Inputs.DashboardWidgetArgs
                {
                    QueryTableDefinition = new Datadog.Inputs.DashboardWidgetQueryTableDefinitionArgs
                    {
                        LiveSpan = "1h",
                        Request = 
                        {
                            
                            {
                                { "aggregator", "sum" },
                                { "conditionalFormats", 
                                {
                                    
                                    {
                                        { "comparator", "<" },
                                        { "palette", "white_on_green" },
                                        { "value", "2" },
                                    },
                                    
                                    {
                                        { "comparator", ">" },
                                        { "palette", "white_on_red" },
                                        { "value", "2.2" },
                                    },
                                } },
                                { "limit", "10" },
                                { "q", "avg:system.load.1{env:staging} by {account}" },
                            },
                        },
                        Title = "Widget Title",
                    },
                },
                new Datadog.Inputs.DashboardWidgetArgs
                {
                    ScatterplotDefinition = new Datadog.Inputs.DashboardWidgetScatterplotDefinitionArgs
                    {
                        ColorByGroups = 
                        {
                            "account",
                            "apm-role-group",
                        },
                        LiveSpan = "1h",
                        Request = new Datadog.Inputs.DashboardWidgetScatterplotDefinitionRequestArgs
                        {
                            X = 
                            {
                                
                                {
                                    { "aggregator", "max" },
                                    { "q", "avg:system.cpu.user{*} by {service, account}" },
                                },
                            },
                            Y = 
                            {
                                
                                {
                                    { "aggregator", "min" },
                                    { "q", "avg:system.mem.used{*} by {service, account}" },
                                },
                            },
                        },
                        Title = "Widget Title",
                        Xaxis = new Datadog.Inputs.DashboardWidgetScatterplotDefinitionXaxisArgs
                        {
                            IncludeZero = true,
                            Label = "x",
                            Max = "2000",
                            Min = "1",
                            Scale = "pow",
                        },
                        Yaxis = new Datadog.Inputs.DashboardWidgetScatterplotDefinitionYaxisArgs
                        {
                            IncludeZero = false,
                            Label = "y",
                            Max = "2222",
                            Min = "5",
                            Scale = "log",
                        },
                    },
                },
                new Datadog.Inputs.DashboardWidgetArgs
                {
                    ServicemapDefinition = new Datadog.Inputs.DashboardWidgetServicemapDefinitionArgs
                    {
                        Filters = 
                        {
                            "env:prod",
                            "datacenter:dc1",
                        },
                        Service = "master-db",
                        Title = "env: prod, datacenter:dc1, service: master-db",
                        TitleAlign = "left",
                        TitleSize = "16",
                    },
                },
                new Datadog.Inputs.DashboardWidgetArgs
                {
                    TimeseriesDefinition = new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionArgs
                    {
                        Event = 
                        {
                            
                            {
                                { "q", "sources:test tags:1" },
                            },
                            
                            {
                                { "q", "sources:test tags:2" },
                            },
                        },
                        LegendSize = "2",
                        LiveSpan = "1h",
                        Marker = 
                        {
                            
                            {
                                { "displayType", "error dashed" },
                                { "label", " z=6 " },
                                { "value", "y = 4" },
                            },
                            
                            {
                                { "displayType", "ok solid" },
                                { "label", " x=8 " },
                                { "value", "10 < y < 999" },
                            },
                        },
                        Request = 
                        {
                            
                            {
                                { "displayType", "line" },
                                { "metadata", 
                                {
                                    
                                    {
                                        { "aliasName", "Alpha" },
                                        { "expression", "avg:system.cpu.user{app:general} by {env}" },
                                    },
                                } },
                                { "q", "avg:system.cpu.user{app:general} by {env}" },
                                { "style", 
                                {
                                    { "lineType", "dashed" },
                                    { "lineWidth", "thin" },
                                    { "palette", "warm" },
                                } },
                            },
                            
                            {
                                { "displayType", "area" },
                                { "logQuery", 
                                {
                                    { "computeQuery", 
                                    {
                                        { "aggregation", "avg" },
                                        { "facet", "@duration" },
                                        { "interval", 5000 },
                                    } },
                                    { "groupBy", 
                                    {
                                        
                                        {
                                            { "facet", "host" },
                                            { "limit", 10 },
                                            { "sortQuery", 
                                            {
                                                { "aggregation", "avg" },
                                                { "facet", "@duration" },
                                                { "order", "desc" },
                                            } },
                                        },
                                    } },
                                    { "index", "mcnulty" },
                                    { "searchQuery", "status:info" },
                                } },
                            },
                            
                            {
                                { "apmQuery", 
                                {
                                    { "computeQuery", 
                                    {
                                        { "aggregation", "avg" },
                                        { "facet", "@duration" },
                                        { "interval", 5000 },
                                    } },
                                    { "groupBy", 
                                    {
                                        
                                        {
                                            { "facet", "resource_name" },
                                            { "limit", 50 },
                                            { "sortQuery", 
                                            {
                                                { "aggregation", "avg" },
                                                { "facet", "@string_query.interval" },
                                                { "order", "desc" },
                                            } },
                                        },
                                    } },
                                    { "index", "apm-search" },
                                    { "searchQuery", "type:web" },
                                } },
                                { "displayType", "bars" },
                            },
                            
                            {
                                { "displayType", "area" },
                                { "processQuery", 
                                {
                                    { "filterBy", 
                                    {
                                        "active",
                                    } },
                                    { "limit", 50 },
                                    { "metric", "process.stat.cpu.total_pct" },
                                    { "searchBy", "error" },
                                } },
                            },
                        },
                        ShowLegend = true,
                        Title = "Widget Title",
                        Yaxis = new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionYaxisArgs
                        {
                            IncludeZero = false,
                            Max = "100",
                            Scale = "log",
                        },
                    },
                },
                new Datadog.Inputs.DashboardWidgetArgs
                {
                    ToplistDefinition = new Datadog.Inputs.DashboardWidgetToplistDefinitionArgs
                    {
                        Request = 
                        {
                            
                            {
                                { "conditionalFormats", 
                                {
                                    
                                    {
                                        { "comparator", "<" },
                                        { "palette", "white_on_green" },
                                        { "value", "2" },
                                    },
                                    
                                    {
                                        { "comparator", ">" },
                                        { "palette", "white_on_red" },
                                        { "value", "2.2" },
                                    },
                                } },
                                { "q", "avg:system.cpu.user{app:general} by {env}" },
                            },
                        },
                        Title = "Widget Title",
                    },
                },
                new Datadog.Inputs.DashboardWidgetArgs
                {
                    GroupDefinition = new Datadog.Inputs.DashboardWidgetGroupDefinitionArgs
                    {
                        LayoutType = "ordered",
                        Title = "Group Widget",
                        Widget = 
                        {
                            
                            {
                                { "noteDefinition", 
                                {
                                    { "backgroundColor", "pink" },
                                    { "content", "cluster note widget" },
                                    { "fontSize", "14" },
                                    { "showTick", true },
                                    { "textAlign", "center" },
                                    { "tickEdge", "left" },
                                    { "tickPos", "50%" },
                                } },
                            },
                            
                            {
                                { "alertGraphDefinition", 
                                {
                                    { "alertId", "123" },
                                    { "liveSpan", "1h" },
                                    { "title", "Alert Graph" },
                                    { "vizType", "toplist" },
                                } },
                            },
                        },
                    },
                },
                new Datadog.Inputs.DashboardWidgetArgs
                {
                    ServiceLevelObjectiveDefinition = new Datadog.Inputs.DashboardWidgetServiceLevelObjectiveDefinitionArgs
                    {
                        ShowErrorBudget = true,
                        SloId = "56789",
                        TimeWindows = 
                        {
                            "7d",
                            "previous_week",
                        },
                        Title = "Widget Title",
                        ViewMode = "overall",
                        ViewType = "detail",
                    },
                },
            },
        });
        // Example Free Layout
        var freeDashboard = new Datadog.Dashboard("freeDashboard", new Datadog.DashboardArgs
        {
            Description = "Created using the Datadog provider in Terraform",
            IsReadOnly = false,
            LayoutType = "free",
            TemplateVariables = 
            {
                new Datadog.Inputs.DashboardTemplateVariableArgs
                {
                    Default = "aws",
                    Name = "var_1",
                    Prefix = "host",
                },
                new Datadog.Inputs.DashboardTemplateVariableArgs
                {
                    Default = "autoscaling",
                    Name = "var_2",
                    Prefix = "service_name",
                },
            },
            TemplateVariablePresets = 
            {
                new Datadog.Inputs.DashboardTemplateVariablePresetArgs
                {
                    Name = "preset_1",
                    TemplateVariables = 
                    {
                        new Datadog.Inputs.DashboardTemplateVariablePresetTemplateVariableArgs
                        {
                            Name = "var_1",
                            Value = "host.dc",
                        },
                        new Datadog.Inputs.DashboardTemplateVariablePresetTemplateVariableArgs
                        {
                            Name = "var_2",
                            Value = "my_service",
                        },
                    },
                },
            },
            Title = "Free Layout Dashboard",
            Widgets = 
            {
                new Datadog.Inputs.DashboardWidgetArgs
                {
                    EventStreamDefinition = new Datadog.Inputs.DashboardWidgetEventStreamDefinitionArgs
                    {
                        EventSize = "l",
                        LiveSpan = "1h",
                        Query = "*",
                        Title = "Widget Title",
                        TitleAlign = "left",
                        TitleSize = "16",
                    },
                    WidgetLayout = new Datadog.Inputs.DashboardWidgetWidgetLayoutArgs
                    {
                        Height = 43,
                        Width = 32,
                        X = 0,
                        Y = 0,
                    },
                },
                new Datadog.Inputs.DashboardWidgetArgs
                {
                    EventTimelineDefinition = new Datadog.Inputs.DashboardWidgetEventTimelineDefinitionArgs
                    {
                        LiveSpan = "1h",
                        Query = "*",
                        Title = "Widget Title",
                        TitleAlign = "left",
                        TitleSize = "16",
                    },
                    WidgetLayout = new Datadog.Inputs.DashboardWidgetWidgetLayoutArgs
                    {
                        Height = 9,
                        Width = 66,
                        X = 33,
                        Y = 60,
                    },
                },
                new Datadog.Inputs.DashboardWidgetArgs
                {
                    FreeTextDefinition = new Datadog.Inputs.DashboardWidgetFreeTextDefinitionArgs
                    {
                        Color = "#d00",
                        FontSize = "36",
                        Text = "free text content",
                        TextAlign = "left",
                    },
                    WidgetLayout = new Datadog.Inputs.DashboardWidgetWidgetLayoutArgs
                    {
                        Height = 20,
                        Width = 34,
                        X = 33,
                        Y = 0,
                    },
                },
                new Datadog.Inputs.DashboardWidgetArgs
                {
                    IframeDefinition = new Datadog.Inputs.DashboardWidgetIframeDefinitionArgs
                    {
                        Url = "http://google.com",
                    },
                    WidgetLayout = new Datadog.Inputs.DashboardWidgetWidgetLayoutArgs
                    {
                        Height = 46,
                        Width = 39,
                        X = 101,
                        Y = 0,
                    },
                },
                new Datadog.Inputs.DashboardWidgetArgs
                {
                    ImageDefinition = new Datadog.Inputs.DashboardWidgetImageDefinitionArgs
                    {
                        Margin = "small",
                        Sizing = "fit",
                        Url = "https://images.pexels.com/photos/67636/rose-blue-flower-rose-blooms-67636.jpeg?auto=compress&cs=tinysrgb&h=350",
                    },
                    WidgetLayout = new Datadog.Inputs.DashboardWidgetWidgetLayoutArgs
                    {
                        Height = 20,
                        Width = 30,
                        X = 69,
                        Y = 0,
                    },
                },
                new Datadog.Inputs.DashboardWidgetArgs
                {
                    LogStreamDefinition = new Datadog.Inputs.DashboardWidgetLogStreamDefinitionArgs
                    {
                        Columns = 
                        {
                            "core_host",
                            "core_service",
                            "tag_source",
                        },
                        Indexes = 
                        {
                            "main",
                        },
                        MessageDisplay = "expanded-md",
                        Query = "error",
                        ShowDateColumn = true,
                        ShowMessageColumn = true,
                        Sort = new Datadog.Inputs.DashboardWidgetLogStreamDefinitionSortArgs
                        {
                            Column = "time",
                            Order = "desc",
                        },
                    },
                    WidgetLayout = new Datadog.Inputs.DashboardWidgetWidgetLayoutArgs
                    {
                        Height = 36,
                        Width = 32,
                        X = 0,
                        Y = 45,
                    },
                },
                new Datadog.Inputs.DashboardWidgetArgs
                {
                    ManageStatusDefinition = new Datadog.Inputs.DashboardWidgetManageStatusDefinitionArgs
                    {
                        ColorPreference = "text",
                        DisplayFormat = "countsAndList",
                        HideZeroCounts = true,
                        Query = "type:metric",
                        ShowLastTriggered = false,
                        Sort = "status,asc",
                        SummaryType = "monitors",
                        Title = "Widget Title",
                        TitleAlign = "left",
                        TitleSize = "16",
                    },
                    WidgetLayout = new Datadog.Inputs.DashboardWidgetWidgetLayoutArgs
                    {
                        Height = 40,
                        Width = 30,
                        X = 101,
                        Y = 48,
                    },
                },
                new Datadog.Inputs.DashboardWidgetArgs
                {
                    TraceServiceDefinition = new Datadog.Inputs.DashboardWidgetTraceServiceDefinitionArgs
                    {
                        DisplayFormat = "three_column",
                        Env = "datadog.com",
                        LiveSpan = "1h",
                        Service = "alerting-cassandra",
                        ShowBreakdown = true,
                        ShowDistribution = true,
                        ShowErrors = true,
                        ShowHits = true,
                        ShowLatency = false,
                        ShowResourceList = false,
                        SizeFormat = "large",
                        SpanName = "cassandra.query",
                        Title = "alerting-cassandra #env:datadog.com",
                        TitleAlign = "center",
                        TitleSize = "13",
                    },
                    WidgetLayout = new Datadog.Inputs.DashboardWidgetWidgetLayoutArgs
                    {
                        Height = 38,
                        Width = 66,
                        X = 33,
                        Y = 21,
                    },
                },
                new Datadog.Inputs.DashboardWidgetArgs
                {
                    TimeseriesDefinition = new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionArgs
                    {
                        Request = 
                        {
                            
                            {
                                { "formula", 
                                {
                                    
                                    {
                                        { "alias", "my ff query" },
                                        { "formulaExpression", "my_query_1 + my_query_2" },
                                    },
                                    
                                    {
                                        { "alias", "my second ff query" },
                                        { "formulaExpression", "my_query_1 * my_query_2" },
                                        { "limit", 
                                        {
                                            { "count", 5 },
                                            { "order", "desc" },
                                        } },
                                    },
                                } },
                                { "query", 
                                {
                                    
                                    {
                                        { "metricQuery", 
                                        {
                                            { "aggregator", "sum" },
                                            { "dataSource", "metrics" },
                                            { "name", "my_query_1" },
                                            { "query", "avg:system.cpu.user{app:general} by {env}" },
                                        } },
                                    },
                                    
                                    {
                                        { "metricQuery", 
                                        {
                                            { "aggregator", "sum" },
                                            { "name", "my_query_2" },
                                            { "query", "avg:system.cpu.user{app:general} by {env}" },
                                        } },
                                    },
                                } },
                            },
                        },
                    },
                    WidgetLayout = new Datadog.Inputs.DashboardWidgetWidgetLayoutArgs
                    {
                        Height = 16,
                        Width = 25,
                        X = 58,
                        Y = 83,
                    },
                },
                new Datadog.Inputs.DashboardWidgetArgs
                {
                    TimeseriesDefinition = new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionArgs
                    {
                        Request = 
                        {
                            
                            {
                                { "query", 
                                {
                                    
                                    {
                                        { "eventQuery", 
                                        {
                                            { "compute", 
                                            {
                                                
                                                {
                                                    { "aggregation", "count" },
                                                },
                                            } },
                                            { "dataSource", "logs" },
                                            { "groupBy", 
                                            {
                                                
                                                {
                                                    { "facet", "host" },
                                                    { "limit", 10 },
                                                    { "sort", 
                                                    {
                                                        { "aggregation", "avg" },
                                                        { "metric", "@lambda.max_memory_used" },
                                                    } },
                                                },
                                            } },
                                            { "indexes", 
                                            {
                                                "days-3",
                                            } },
                                            { "name", "my-query" },
                                        } },
                                    },
                                } },
                            },
                        },
                    },
                    WidgetLayout = new Datadog.Inputs.DashboardWidgetWidgetLayoutArgs
                    {
                        Height = 16,
                        Width = 28,
                        X = 29,
                        Y = 83,
                    },
                },
                new Datadog.Inputs.DashboardWidgetArgs
                {
                    TimeseriesDefinition = new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionArgs
                    {
                        Request = 
                        {
                            
                            {
                                { "query", 
                                {
                                    
                                    {
                                        { "processQuery", 
                                        {
                                            { "aggregator", "sum" },
                                            { "dataSource", "process" },
                                            { "isNormalizedCpu", true },
                                            { "limit", 10 },
                                            { "metric", "process.stat.cpu.total_pct" },
                                            { "name", "my_process_query" },
                                            { "sort", "asc" },
                                            { "tagFilters", 
                                            {
                                                "some_filter",
                                            } },
                                            { "textFilter", "abc" },
                                        } },
                                    },
                                } },
                            },
                        },
                    },
                    WidgetLayout = new Datadog.Inputs.DashboardWidgetWidgetLayoutArgs
                    {
                        Height = 16,
                        Width = 28,
                        X = 0,
                        Y = 83,
                    },
                },
            },
        });
    }

}
package main

import (
	"fmt"

	"github.com/pulumi/pulumi-datadog/sdk/v4/go/datadog"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := datadog.NewDashboard(ctx, "orderedDashboard", &datadog.DashboardArgs{
			Description: pulumi.String("Created using the Datadog provider in Terraform"),
			IsReadOnly:  pulumi.Bool(true),
			LayoutType:  pulumi.String("ordered"),
			TemplateVariables: DashboardTemplateVariableArray{
				&DashboardTemplateVariableArgs{
					Default: pulumi.String("aws"),
					Name:    pulumi.String("var_1"),
					Prefix:  pulumi.String("host"),
				},
				&DashboardTemplateVariableArgs{
					Default: pulumi.String("autoscaling"),
					Name:    pulumi.String("var_2"),
					Prefix:  pulumi.String("service_name"),
				},
			},
			TemplateVariablePresets: DashboardTemplateVariablePresetArray{
				&DashboardTemplateVariablePresetArgs{
					Name: pulumi.String("preset_1"),
					TemplateVariables: DashboardTemplateVariablePresetTemplateVariableArray{
						&DashboardTemplateVariablePresetTemplateVariableArgs{
							Name:  pulumi.String("var_1"),
							Value: pulumi.String("host.dc"),
						},
						&DashboardTemplateVariablePresetTemplateVariableArgs{
							Name:  pulumi.String("var_2"),
							Value: pulumi.String("my_service"),
						},
					},
				},
			},
			Title: pulumi.String("Ordered Layout Dashboard"),
			Widgets: DashboardWidgetArray{
				&DashboardWidgetArgs{
					AlertGraphDefinition: &DashboardWidgetAlertGraphDefinitionArgs{
						AlertId:  pulumi.String("895605"),
						LiveSpan: pulumi.String("1h"),
						Title:    pulumi.String("Widget Title"),
						VizType:  pulumi.String("timeseries"),
					},
				},
				&DashboardWidgetArgs{
					AlertValueDefinition: &DashboardWidgetAlertValueDefinitionArgs{
						AlertId:   pulumi.String("895605"),
						Precision: pulumi.Int(3),
						TextAlign: pulumi.String("center"),
						Title:     pulumi.String("Widget Title"),
						Unit:      pulumi.String("b"),
					},
				},
				&DashboardWidgetArgs{
					AlertValueDefinition: &DashboardWidgetAlertValueDefinitionArgs{
						AlertId:   pulumi.String("895605"),
						Precision: pulumi.Int(3),
						TextAlign: pulumi.String("center"),
						Title:     pulumi.String("Widget Title"),
						Unit:      pulumi.String("b"),
					},
				},
				&DashboardWidgetArgs{
					ChangeDefinition: &DashboardWidgetChangeDefinitionArgs{
						LiveSpan: pulumi.String("1h"),
						Request: []map[string]interface{}{
							map[string]interface{}{
								"changeType":   "absolute",
								"compareTo":    "week_before",
								"increaseGood": true,
								"orderBy":      "name",
								"orderDir":     "desc",
								"q":            "avg:system.load.1{env:staging} by {account}",
								"showPresent":  true,
							},
						},
						Title: pulumi.String("Widget Title"),
					},
				},
				&DashboardWidgetArgs{
					DistributionDefinition: &DashboardWidgetDistributionDefinitionArgs{
						LiveSpan: pulumi.String("1h"),
						Request: []map[string]interface{}{
							map[string]interface{}{
								"q": "avg:system.load.1{env:staging} by {account}",
								"style": map[string]interface{}{
									"palette": "warm",
								},
							},
						},
						Title: pulumi.String("Widget Title"),
					},
				},
				&DashboardWidgetArgs{
					CheckStatusDefinition: &DashboardWidgetCheckStatusDefinitionArgs{
						Check: pulumi.String("aws.ecs.agent_connected"),
						GroupBy: []string{
							"account",
							"cluster",
						},
						Grouping: pulumi.String("cluster"),
						LiveSpan: pulumi.String("1h"),
						Tags: pulumi.StringArray{
							pulumi.String("account:demo"),
							pulumi.String("cluster:awseb-ruthebdog-env-8-dn3m6u3gvk"),
						},
						Title: pulumi.String("Widget Title"),
					},
				},
				&DashboardWidgetArgs{
					HeatmapDefinition: &DashboardWidgetHeatmapDefinitionArgs{
						LiveSpan: pulumi.String("1h"),
						Request: []map[string]interface{}{
							map[string]interface{}{
								"q": "avg:system.load.1{env:staging} by {account}",
								"style": map[string]interface{}{
									"palette": "warm",
								},
							},
						},
						Title: pulumi.String("Widget Title"),
						Yaxis: &DashboardWidgetHeatmapDefinitionYaxisArgs{
							IncludeZero: pulumi.Bool(true),
							Max:         pulumi.String("2"),
							Min:         pulumi.String("1"),
							Scale:       pulumi.String("sqrt"),
						},
					},
				},
				&DashboardWidgetArgs{
					HostmapDefinition: &DashboardWidgetHostmapDefinitionArgs{
						Group: []string{
							"host",
							"region",
						},
						NoGroupHosts:  pulumi.Bool(true),
						NoMetricHosts: pulumi.Bool(true),
						NodeType:      pulumi.String("container"),
						Request: &DashboardWidgetHostmapDefinitionRequestArgs{
							Fill: []map[string]interface{}{
								map[string]interface{}{
									"q": "avg:system.load.1{*} by {host}",
								},
							},
							Size: []map[string]interface{}{
								map[string]interface{}{
									"q": "avg:memcache.uptime{*} by {host}",
								},
							},
						},
						Scope: []string{
							"region:us-east-1",
							"aws_account:727006795293",
						},
						Style: &DashboardWidgetHostmapDefinitionStyleArgs{
							FillMax:     pulumi.String("20"),
							FillMin:     pulumi.String("10"),
							Palette:     pulumi.String("yellow_to_green"),
							PaletteFlip: pulumi.Bool(true),
						},
						Title: pulumi.String("Widget Title"),
					},
				},
				&DashboardWidgetArgs{
					NoteDefinition: &DashboardWidgetNoteDefinitionArgs{
						BackgroundColor: pulumi.String("pink"),
						Content:         pulumi.String("note text"),
						FontSize:        pulumi.String("14"),
						ShowTick:        pulumi.Bool(true),
						TextAlign:       pulumi.String("center"),
						TickEdge:        pulumi.String("left"),
						TickPos:         pulumi.String(fmt.Sprintf("%v%v", "50", "%")),
					},
				},
				&DashboardWidgetArgs{
					QueryValueDefinition: &DashboardWidgetQueryValueDefinitionArgs{
						Autoscale:  pulumi.Bool(true),
						CustomUnit: pulumi.String("xx"),
						LiveSpan:   pulumi.String("1h"),
						Precision:  pulumi.Int(4),
						Request: []map[string]interface{}{
							map[string]interface{}{
								"aggregator": "sum",
								"conditionalFormats": []map[string]interface{}{
									map[string]interface{}{
										"comparator": "<",
										"palette":    "white_on_green",
										"value":      "2",
									},
									map[string]interface{}{
										"comparator": ">",
										"palette":    "white_on_red",
										"value":      "2.2",
									},
								},
								"q": "avg:system.load.1{env:staging} by {account}",
							},
						},
						TextAlign: pulumi.String("right"),
						Title:     pulumi.String("Widget Title"),
					},
				},
				&DashboardWidgetArgs{
					QueryTableDefinition: &DashboardWidgetQueryTableDefinitionArgs{
						LiveSpan: pulumi.String("1h"),
						Request: []map[string]interface{}{
							map[string]interface{}{
								"aggregator": "sum",
								"conditionalFormats": []map[string]interface{}{
									map[string]interface{}{
										"comparator": "<",
										"palette":    "white_on_green",
										"value":      "2",
									},
									map[string]interface{}{
										"comparator": ">",
										"palette":    "white_on_red",
										"value":      "2.2",
									},
								},
								"limit": "10",
								"q":     "avg:system.load.1{env:staging} by {account}",
							},
						},
						Title: pulumi.String("Widget Title"),
					},
				},
				&DashboardWidgetArgs{
					ScatterplotDefinition: &DashboardWidgetScatterplotDefinitionArgs{
						ColorByGroups: pulumi.StringArray{
							pulumi.String("account"),
							pulumi.String("apm-role-group"),
						},
						LiveSpan: pulumi.String("1h"),
						Request: &DashboardWidgetScatterplotDefinitionRequestArgs{
							X: []map[string]interface{}{
								map[string]interface{}{
									"aggregator": "max",
									"q":          "avg:system.cpu.user{*} by {service, account}",
								},
							},
							Y: []map[string]interface{}{
								map[string]interface{}{
									"aggregator": "min",
									"q":          "avg:system.mem.used{*} by {service, account}",
								},
							},
						},
						Title: pulumi.String("Widget Title"),
						Xaxis: &DashboardWidgetScatterplotDefinitionXaxisArgs{
							IncludeZero: pulumi.Bool(true),
							Label:       pulumi.String("x"),
							Max:         pulumi.String("2000"),
							Min:         pulumi.String("1"),
							Scale:       pulumi.String("pow"),
						},
						Yaxis: &DashboardWidgetScatterplotDefinitionYaxisArgs{
							IncludeZero: pulumi.Bool(false),
							Label:       pulumi.String("y"),
							Max:         pulumi.String("2222"),
							Min:         pulumi.String("5"),
							Scale:       pulumi.String("log"),
						},
					},
				},
				&DashboardWidgetArgs{
					ServicemapDefinition: &DashboardWidgetServicemapDefinitionArgs{
						Filters: pulumi.StringArray{
							pulumi.String("env:prod"),
							pulumi.String("datacenter:dc1"),
						},
						Service:    pulumi.String("master-db"),
						Title:      pulumi.String("env: prod, datacenter:dc1, service: master-db"),
						TitleAlign: pulumi.String("left"),
						TitleSize:  pulumi.String("16"),
					},
				},
				&DashboardWidgetArgs{
					TimeseriesDefinition: &DashboardWidgetTimeseriesDefinitionArgs{
						Event: []map[string]interface{}{
							map[string]interface{}{
								"q": "sources:test tags:1",
							},
							map[string]interface{}{
								"q": "sources:test tags:2",
							},
						},
						LegendSize: pulumi.String("2"),
						LiveSpan:   pulumi.String("1h"),
						Marker: []map[string]interface{}{
							map[string]interface{}{
								"displayType": "error dashed",
								"label":       " z=6 ",
								"value":       "y = 4",
							},
							map[string]interface{}{
								"displayType": "ok solid",
								"label":       " x=8 ",
								"value":       "10 < y < 999",
							},
						},
						Request: []interface{}{
							map[string]interface{}{
								"displayType": "line",
								"metadata": []map[string]interface{}{
									map[string]interface{}{
										"aliasName":  "Alpha",
										"expression": "avg:system.cpu.user{app:general} by {env}",
									},
								},
								"q": "avg:system.cpu.user{app:general} by {env}",
								"style": map[string]interface{}{
									"lineType":  "dashed",
									"lineWidth": "thin",
									"palette":   "warm",
								},
							},
							map[string]interface{}{
								"displayType": "area",
								"logQuery": map[string]interface{}{
									"computeQuery": map[string]interface{}{
										"aggregation": "avg",
										"facet":       "@duration",
										"interval":    5000,
									},
									"groupBy": []map[string]interface{}{
										map[string]interface{}{
											"facet": "host",
											"limit": 10,
											"sortQuery": map[string]interface{}{
												"aggregation": "avg",
												"facet":       "@duration",
												"order":       "desc",
											},
										},
									},
									"index":       "mcnulty",
									"searchQuery": "status:info",
								},
							},
							map[string]interface{}{
								"apmQuery": map[string]interface{}{
									"computeQuery": map[string]interface{}{
										"aggregation": "avg",
										"facet":       "@duration",
										"interval":    5000,
									},
									"groupBy": []map[string]interface{}{
										map[string]interface{}{
											"facet": "resource_name",
											"limit": 50,
											"sortQuery": map[string]interface{}{
												"aggregation": "avg",
												"facet":       "@string_query.interval",
												"order":       "desc",
											},
										},
									},
									"index":       "apm-search",
									"searchQuery": "type:web",
								},
								"displayType": "bars",
							},
							map[string]interface{}{
								"displayType": "area",
								"processQuery": map[string]interface{}{
									"filterBy": []string{
										"active",
									},
									"limit":    50,
									"metric":   "process.stat.cpu.total_pct",
									"searchBy": "error",
								},
							},
						},
						ShowLegend: pulumi.Bool(true),
						Title:      pulumi.String("Widget Title"),
						Yaxis: &DashboardWidgetTimeseriesDefinitionYaxisArgs{
							IncludeZero: pulumi.Bool(false),
							Max:         pulumi.String("100"),
							Scale:       pulumi.String("log"),
						},
					},
				},
				&DashboardWidgetArgs{
					ToplistDefinition: &DashboardWidgetToplistDefinitionArgs{
						Request: []map[string]interface{}{
							map[string]interface{}{
								"conditionalFormats": []map[string]interface{}{
									map[string]interface{}{
										"comparator": "<",
										"palette":    "white_on_green",
										"value":      "2",
									},
									map[string]interface{}{
										"comparator": ">",
										"palette":    "white_on_red",
										"value":      "2.2",
									},
								},
								"q": "avg:system.cpu.user{app:general} by {env}",
							},
						},
						Title: pulumi.String("Widget Title"),
					},
				},
				&DashboardWidgetArgs{
					GroupDefinition: &DashboardWidgetGroupDefinitionArgs{
						LayoutType: pulumi.String("ordered"),
						Title:      pulumi.String("Group Widget"),
						Widget: []interface{}{
							map[string]interface{}{
								"noteDefinition": map[string]interface{}{
									"backgroundColor": "pink",
									"content":         "cluster note widget",
									"fontSize":        "14",
									"showTick":        true,
									"textAlign":       "center",
									"tickEdge":        "left",
									"tickPos":         fmt.Sprintf("%v%v", "50", "%"),
								},
							},
							map[string]interface{}{
								"alertGraphDefinition": map[string]interface{}{
									"alertId":  "123",
									"liveSpan": "1h",
									"title":    "Alert Graph",
									"vizType":  "toplist",
								},
							},
						},
					},
				},
				&DashboardWidgetArgs{
					ServiceLevelObjectiveDefinition: &DashboardWidgetServiceLevelObjectiveDefinitionArgs{
						ShowErrorBudget: pulumi.Bool(true),
						SloId:           pulumi.String("56789"),
						TimeWindows: pulumi.StringArray{
							pulumi.String("7d"),
							pulumi.String("previous_week"),
						},
						Title:    pulumi.String("Widget Title"),
						ViewMode: pulumi.String("overall"),
						ViewType: pulumi.String("detail"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = datadog.NewDashboard(ctx, "freeDashboard", &datadog.DashboardArgs{
			Description: pulumi.String("Created using the Datadog provider in Terraform"),
			IsReadOnly:  pulumi.Bool(false),
			LayoutType:  pulumi.String("free"),
			TemplateVariables: DashboardTemplateVariableArray{
				&DashboardTemplateVariableArgs{
					Default: pulumi.String("aws"),
					Name:    pulumi.String("var_1"),
					Prefix:  pulumi.String("host"),
				},
				&DashboardTemplateVariableArgs{
					Default: pulumi.String("autoscaling"),
					Name:    pulumi.String("var_2"),
					Prefix:  pulumi.String("service_name"),
				},
			},
			TemplateVariablePresets: DashboardTemplateVariablePresetArray{
				&DashboardTemplateVariablePresetArgs{
					Name: pulumi.String("preset_1"),
					TemplateVariables: DashboardTemplateVariablePresetTemplateVariableArray{
						&DashboardTemplateVariablePresetTemplateVariableArgs{
							Name:  pulumi.String("var_1"),
							Value: pulumi.String("host.dc"),
						},
						&DashboardTemplateVariablePresetTemplateVariableArgs{
							Name:  pulumi.String("var_2"),
							Value: pulumi.String("my_service"),
						},
					},
				},
			},
			Title: pulumi.String("Free Layout Dashboard"),
			Widgets: DashboardWidgetArray{
				&DashboardWidgetArgs{
					EventStreamDefinition: &DashboardWidgetEventStreamDefinitionArgs{
						EventSize:  pulumi.String("l"),
						LiveSpan:   pulumi.String("1h"),
						Query:      pulumi.String("*"),
						Title:      pulumi.String("Widget Title"),
						TitleAlign: pulumi.String("left"),
						TitleSize:  pulumi.String("16"),
					},
					WidgetLayout: &DashboardWidgetWidgetLayoutArgs{
						Height: pulumi.Int(43),
						Width:  pulumi.Int(32),
						X:      pulumi.Int(0),
						Y:      pulumi.Int(0),
					},
				},
				&DashboardWidgetArgs{
					EventTimelineDefinition: &DashboardWidgetEventTimelineDefinitionArgs{
						LiveSpan:   pulumi.String("1h"),
						Query:      pulumi.String("*"),
						Title:      pulumi.String("Widget Title"),
						TitleAlign: pulumi.String("left"),
						TitleSize:  pulumi.String("16"),
					},
					WidgetLayout: &DashboardWidgetWidgetLayoutArgs{
						Height: pulumi.Int(9),
						Width:  pulumi.Int(66),
						X:      pulumi.Int(33),
						Y:      pulumi.Int(60),
					},
				},
				&DashboardWidgetArgs{
					FreeTextDefinition: &DashboardWidgetFreeTextDefinitionArgs{
						Color:     pulumi.String("#d00"),
						FontSize:  pulumi.String("36"),
						Text:      pulumi.String("free text content"),
						TextAlign: pulumi.String("left"),
					},
					WidgetLayout: &DashboardWidgetWidgetLayoutArgs{
						Height: pulumi.Int(20),
						Width:  pulumi.Int(34),
						X:      pulumi.Int(33),
						Y:      pulumi.Int(0),
					},
				},
				&DashboardWidgetArgs{
					IframeDefinition: &DashboardWidgetIframeDefinitionArgs{
						Url: pulumi.String("http://google.com"),
					},
					WidgetLayout: &DashboardWidgetWidgetLayoutArgs{
						Height: pulumi.Int(46),
						Width:  pulumi.Int(39),
						X:      pulumi.Int(101),
						Y:      pulumi.Int(0),
					},
				},
				&DashboardWidgetArgs{
					ImageDefinition: &DashboardWidgetImageDefinitionArgs{
						Margin: pulumi.String("small"),
						Sizing: pulumi.String("fit"),
						Url:    pulumi.String("https://images.pexels.com/photos/67636/rose-blue-flower-rose-blooms-67636.jpeg?auto=compress&cs=tinysrgb&h=350"),
					},
					WidgetLayout: &DashboardWidgetWidgetLayoutArgs{
						Height: pulumi.Int(20),
						Width:  pulumi.Int(30),
						X:      pulumi.Int(69),
						Y:      pulumi.Int(0),
					},
				},
				&DashboardWidgetArgs{
					LogStreamDefinition: &DashboardWidgetLogStreamDefinitionArgs{
						Columns: pulumi.StringArray{
							pulumi.String("core_host"),
							pulumi.String("core_service"),
							pulumi.String("tag_source"),
						},
						Indexes: pulumi.StringArray{
							pulumi.String("main"),
						},
						MessageDisplay:    pulumi.String("expanded-md"),
						Query:             pulumi.String("error"),
						ShowDateColumn:    pulumi.Bool(true),
						ShowMessageColumn: pulumi.Bool(true),
						Sort: &DashboardWidgetLogStreamDefinitionSortArgs{
							Column: pulumi.String("time"),
							Order:  pulumi.String("desc"),
						},
					},
					WidgetLayout: &DashboardWidgetWidgetLayoutArgs{
						Height: pulumi.Int(36),
						Width:  pulumi.Int(32),
						X:      pulumi.Int(0),
						Y:      pulumi.Int(45),
					},
				},
				&DashboardWidgetArgs{
					ManageStatusDefinition: &DashboardWidgetManageStatusDefinitionArgs{
						ColorPreference:   pulumi.String("text"),
						DisplayFormat:     pulumi.String("countsAndList"),
						HideZeroCounts:    pulumi.Bool(true),
						Query:             pulumi.String("type:metric"),
						ShowLastTriggered: pulumi.Bool(false),
						Sort:              pulumi.String("status,asc"),
						SummaryType:       pulumi.String("monitors"),
						Title:             pulumi.String("Widget Title"),
						TitleAlign:        pulumi.String("left"),
						TitleSize:         pulumi.String("16"),
					},
					WidgetLayout: &DashboardWidgetWidgetLayoutArgs{
						Height: pulumi.Int(40),
						Width:  pulumi.Int(30),
						X:      pulumi.Int(101),
						Y:      pulumi.Int(48),
					},
				},
				&DashboardWidgetArgs{
					TraceServiceDefinition: &DashboardWidgetTraceServiceDefinitionArgs{
						DisplayFormat:    pulumi.String("three_column"),
						Env:              pulumi.String("datadog.com"),
						LiveSpan:         pulumi.String("1h"),
						Service:          pulumi.String("alerting-cassandra"),
						ShowBreakdown:    pulumi.Bool(true),
						ShowDistribution: pulumi.Bool(true),
						ShowErrors:       pulumi.Bool(true),
						ShowHits:         pulumi.Bool(true),
						ShowLatency:      pulumi.Bool(false),
						ShowResourceList: pulumi.Bool(false),
						SizeFormat:       pulumi.String("large"),
						SpanName:         pulumi.String("cassandra.query"),
						Title:            pulumi.String("alerting-cassandra #env:datadog.com"),
						TitleAlign:       pulumi.String("center"),
						TitleSize:        pulumi.String("13"),
					},
					WidgetLayout: &DashboardWidgetWidgetLayoutArgs{
						Height: pulumi.Int(38),
						Width:  pulumi.Int(66),
						X:      pulumi.Int(33),
						Y:      pulumi.Int(21),
					},
				},
				&DashboardWidgetArgs{
					TimeseriesDefinition: &DashboardWidgetTimeseriesDefinitionArgs{
						Request: []map[string]interface{}{
							map[string]interface{}{
								"formula": []map[string]interface{}{
									map[string]interface{}{
										"alias":             "my ff query",
										"formulaExpression": "my_query_1 + my_query_2",
									},
									map[string]interface{}{
										"alias":             "my second ff query",
										"formulaExpression": "my_query_1 * my_query_2",
										"limit": map[string]interface{}{
											"count": 5,
											"order": "desc",
										},
									},
								},
								"query": []interface{}{
									map[string]interface{}{
										"metricQuery": map[string]interface{}{
											"aggregator": "sum",
											"dataSource": "metrics",
											"name":       "my_query_1",
											"query":      "avg:system.cpu.user{app:general} by {env}",
										},
									},
									map[string]interface{}{
										"metricQuery": map[string]interface{}{
											"aggregator": "sum",
											"name":       "my_query_2",
											"query":      "avg:system.cpu.user{app:general} by {env}",
										},
									},
								},
							},
						},
					},
					WidgetLayout: &DashboardWidgetWidgetLayoutArgs{
						Height: pulumi.Int(16),
						Width:  pulumi.Int(25),
						X:      pulumi.Int(58),
						Y:      pulumi.Int(83),
					},
				},
				&DashboardWidgetArgs{
					TimeseriesDefinition: &DashboardWidgetTimeseriesDefinitionArgs{
						Request: []map[string]interface{}{
							map[string]interface{}{
								"query": []map[string]interface{}{
									map[string]interface{}{
										"eventQuery": map[string]interface{}{
											"compute": []map[string]interface{}{
												map[string]interface{}{
													"aggregation": "count",
												},
											},
											"dataSource": "logs",
											"groupBy": []map[string]interface{}{
												map[string]interface{}{
													"facet": "host",
													"limit": 10,
													"sort": map[string]interface{}{
														"aggregation": "avg",
														"metric":      "@lambda.max_memory_used",
													},
												},
											},
											"indexes": []string{
												"days-3",
											},
											"name": "my-query",
										},
									},
								},
							},
						},
					},
					WidgetLayout: &DashboardWidgetWidgetLayoutArgs{
						Height: pulumi.Int(16),
						Width:  pulumi.Int(28),
						X:      pulumi.Int(29),
						Y:      pulumi.Int(83),
					},
				},
				&DashboardWidgetArgs{
					TimeseriesDefinition: &DashboardWidgetTimeseriesDefinitionArgs{
						Request: []map[string]interface{}{
							map[string]interface{}{
								"query": []map[string]interface{}{
									map[string]interface{}{
										"processQuery": map[string]interface{}{
											"aggregator":      "sum",
											"dataSource":      "process",
											"isNormalizedCpu": true,
											"limit":           10,
											"metric":          "process.stat.cpu.total_pct",
											"name":            "my_process_query",
											"sort":            "asc",
											"tagFilters": []string{
												"some_filter",
											},
											"textFilter": "abc",
										},
									},
								},
							},
						},
					},
					WidgetLayout: &DashboardWidgetWidgetLayoutArgs{
						Height: pulumi.Int(16),
						Width:  pulumi.Int(28),
						X:      pulumi.Int(0),
						Y:      pulumi.Int(83),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
package generated_program;

import java.util.*;
import java.io.*;
import java.nio.*;
import com.pulumi.*;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        var orderedDashboard = new Dashboard("orderedDashboard", DashboardArgs.builder()        
            .description("Created using the Datadog provider in Terraform")
            .isReadOnly(true)
            .layoutType("ordered")
            .templateVariables(            
                DashboardTemplateVariableArgs.builder()
                    .default_("aws")
                    .name("var_1")
                    .prefix("host")
                    .build(),
                DashboardTemplateVariableArgs.builder()
                    .default_("autoscaling")
                    .name("var_2")
                    .prefix("service_name")
                    .build())
            .templateVariablePresets(DashboardTemplateVariablePresetArgs.builder()
                .name("preset_1")
                .templateVariables(                
                    DashboardTemplateVariablePresetTemplateVariableArgs.builder()
                        .name("var_1")
                        .value("host.dc")
                        .build(),
                    DashboardTemplateVariablePresetTemplateVariableArgs.builder()
                        .name("var_2")
                        .value("my_service")
                        .build())
                .build())
            .title("Ordered Layout Dashboard")
            .widgets(            
                DashboardWidgetArgs.builder()
                    .alertGraphDefinition(DashboardWidgetAlertGraphDefinitionArgs.builder()
                        .alertId("895605")
                        .liveSpan("1h")
                        .title("Widget Title")
                        .vizType("timeseries")
                        .build())
                    .build(),
                DashboardWidgetArgs.builder()
                    .alertValueDefinition(DashboardWidgetAlertValueDefinitionArgs.builder()
                        .alertId("895605")
                        .precision(3)
                        .textAlign("center")
                        .title("Widget Title")
                        .unit("b")
                        .build())
                    .build(),
                DashboardWidgetArgs.builder()
                    .alertValueDefinition(DashboardWidgetAlertValueDefinitionArgs.builder()
                        .alertId("895605")
                        .precision(3)
                        .textAlign("center")
                        .title("Widget Title")
                        .unit("b")
                        .build())
                    .build(),
                DashboardWidgetArgs.builder()
                    .changeDefinition(DashboardWidgetChangeDefinitionArgs.builder()
                        .liveSpan("1h")
                        .request(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
                        .title("Widget Title")
                        .build())
                    .build(),
                DashboardWidgetArgs.builder()
                    .distributionDefinition(DashboardWidgetDistributionDefinitionArgs.builder()
                        .liveSpan("1h")
                        .request(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
                        .title("Widget Title")
                        .build())
                    .build(),
                DashboardWidgetArgs.builder()
                    .checkStatusDefinition(DashboardWidgetCheckStatusDefinitionArgs.builder()
                        .check("aws.ecs.agent_connected")
                        .groupBy(                        
                            "account",
                            "cluster")
                        .grouping("cluster")
                        .liveSpan("1h")
                        .tags(                        
                            "account:demo",
                            "cluster:awseb-ruthebdog-env-8-dn3m6u3gvk")
                        .title("Widget Title")
                        .build())
                    .build(),
                DashboardWidgetArgs.builder()
                    .heatmapDefinition(DashboardWidgetHeatmapDefinitionArgs.builder()
                        .liveSpan("1h")
                        .request(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
                        .title("Widget Title")
                        .yaxis(DashboardWidgetHeatmapDefinitionYaxisArgs.builder()
                            .includeZero(true)
                            .max(2)
                            .min(1)
                            .scale("sqrt")
                            .build())
                        .build())
                    .build(),
                DashboardWidgetArgs.builder()
                    .hostmapDefinition(DashboardWidgetHostmapDefinitionArgs.builder()
                        .group(                        
                            "host",
                            "region")
                        .noGroupHosts(true)
                        .noMetricHosts(true)
                        .nodeType("container")
                        .request(DashboardWidgetHostmapDefinitionRequestArgs.builder()
                            .fill(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
                            .size(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
                            .build())
                        .scope(                        
                            "region:us-east-1",
                            "aws_account:727006795293")
                        .style(DashboardWidgetHostmapDefinitionStyleArgs.builder()
                            .fillMax("20")
                            .fillMin("10")
                            .palette("yellow_to_green")
                            .paletteFlip(true)
                            .build())
                        .title("Widget Title")
                        .build())
                    .build(),
                DashboardWidgetArgs.builder()
                    .noteDefinition(DashboardWidgetNoteDefinitionArgs.builder()
                        .backgroundColor("pink")
                        .content("note text")
                        .fontSize("14")
                        .showTick(true)
                        .textAlign("center")
                        .tickEdge("left")
                        .tickPos("50%")
                        .build())
                    .build(),
                DashboardWidgetArgs.builder()
                    .queryValueDefinition(DashboardWidgetQueryValueDefinitionArgs.builder()
                        .autoscale(true)
                        .customUnit("xx")
                        .liveSpan("1h")
                        .precision("4")
                        .request(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
                        .textAlign("right")
                        .title("Widget Title")
                        .build())
                    .build(),
                DashboardWidgetArgs.builder()
                    .queryTableDefinition(DashboardWidgetQueryTableDefinitionArgs.builder()
                        .liveSpan("1h")
                        .request(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
                        .title("Widget Title")
                        .build())
                    .build(),
                DashboardWidgetArgs.builder()
                    .scatterplotDefinition(DashboardWidgetScatterplotDefinitionArgs.builder()
                        .colorByGroups(                        
                            "account",
                            "apm-role-group")
                        .liveSpan("1h")
                        .request(DashboardWidgetScatterplotDefinitionRequestArgs.builder()
                            .x(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
                            .y(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
                            .build())
                        .title("Widget Title")
                        .xaxis(DashboardWidgetScatterplotDefinitionXaxisArgs.builder()
                            .includeZero(true)
                            .label("x")
                            .max("2000")
                            .min("1")
                            .scale("pow")
                            .build())
                        .yaxis(DashboardWidgetScatterplotDefinitionYaxisArgs.builder()
                            .includeZero(false)
                            .label("y")
                            .max("2222")
                            .min("5")
                            .scale("log")
                            .build())
                        .build())
                    .build(),
                DashboardWidgetArgs.builder()
                    .servicemapDefinition(DashboardWidgetServicemapDefinitionArgs.builder()
                        .filters(                        
                            "env:prod",
                            "datacenter:dc1")
                        .service("master-db")
                        .title("env: prod, datacenter:dc1, service: master-db")
                        .titleAlign("left")
                        .titleSize("16")
                        .build())
                    .build(),
                DashboardWidgetArgs.builder()
                    .timeseriesDefinition(DashboardWidgetTimeseriesDefinitionArgs.builder()
                        .event(                        
                            %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference),
                            %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
                        .legendSize("2")
                        .liveSpan("1h")
                        .marker(                        
                            %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference),
                            %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
                        .request(                        
                            %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference),
                            %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference),
                            %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference),
                            %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
                        .showLegend(true)
                        .title("Widget Title")
                        .yaxis(DashboardWidgetTimeseriesDefinitionYaxisArgs.builder()
                            .includeZero(false)
                            .max(100)
                            .scale("log")
                            .build())
                        .build())
                    .build(),
                DashboardWidgetArgs.builder()
                    .toplistDefinition(DashboardWidgetToplistDefinitionArgs.builder()
                        .request(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
                        .title("Widget Title")
                        .build())
                    .build(),
                DashboardWidgetArgs.builder()
                    .groupDefinition(DashboardWidgetGroupDefinitionArgs.builder()
                        .layoutType("ordered")
                        .title("Group Widget")
                        .widget(                        
                            %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference),
                            %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
                        .build())
                    .build(),
                DashboardWidgetArgs.builder()
                    .serviceLevelObjectiveDefinition(DashboardWidgetServiceLevelObjectiveDefinitionArgs.builder()
                        .showErrorBudget(true)
                        .sloId("56789")
                        .timeWindows(                        
                            "7d",
                            "previous_week")
                        .title("Widget Title")
                        .viewMode("overall")
                        .viewType("detail")
                        .build())
                    .build())
            .build());

        var freeDashboard = new Dashboard("freeDashboard", DashboardArgs.builder()        
            .description("Created using the Datadog provider in Terraform")
            .isReadOnly(false)
            .layoutType("free")
            .templateVariables(            
                DashboardTemplateVariableArgs.builder()
                    .default_("aws")
                    .name("var_1")
                    .prefix("host")
                    .build(),
                DashboardTemplateVariableArgs.builder()
                    .default_("autoscaling")
                    .name("var_2")
                    .prefix("service_name")
                    .build())
            .templateVariablePresets(DashboardTemplateVariablePresetArgs.builder()
                .name("preset_1")
                .templateVariables(                
                    DashboardTemplateVariablePresetTemplateVariableArgs.builder()
                        .name("var_1")
                        .value("host.dc")
                        .build(),
                    DashboardTemplateVariablePresetTemplateVariableArgs.builder()
                        .name("var_2")
                        .value("my_service")
                        .build())
                .build())
            .title("Free Layout Dashboard")
            .widgets(            
                DashboardWidgetArgs.builder()
                    .eventStreamDefinition(DashboardWidgetEventStreamDefinitionArgs.builder()
                        .eventSize("l")
                        .liveSpan("1h")
                        .query("*")
                        .title("Widget Title")
                        .titleAlign("left")
                        .titleSize(16)
                        .build())
                    .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()
                        .height(43)
                        .width(32)
                        .x(0)
                        .y(0)
                        .build())
                    .build(),
                DashboardWidgetArgs.builder()
                    .eventTimelineDefinition(DashboardWidgetEventTimelineDefinitionArgs.builder()
                        .liveSpan("1h")
                        .query("*")
                        .title("Widget Title")
                        .titleAlign("left")
                        .titleSize(16)
                        .build())
                    .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()
                        .height(9)
                        .width(66)
                        .x(33)
                        .y(60)
                        .build())
                    .build(),
                DashboardWidgetArgs.builder()
                    .freeTextDefinition(DashboardWidgetFreeTextDefinitionArgs.builder()
                        .color("#d00")
                        .fontSize("36")
                        .text("free text content")
                        .textAlign("left")
                        .build())
                    .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()
                        .height(20)
                        .width(34)
                        .x(33)
                        .y(0)
                        .build())
                    .build(),
                DashboardWidgetArgs.builder()
                    .iframeDefinition(DashboardWidgetIframeDefinitionArgs.builder()
                        .url("http://google.com")
                        .build())
                    .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()
                        .height(46)
                        .width(39)
                        .x(101)
                        .y(0)
                        .build())
                    .build(),
                DashboardWidgetArgs.builder()
                    .imageDefinition(DashboardWidgetImageDefinitionArgs.builder()
                        .margin("small")
                        .sizing("fit")
                        .url("https://images.pexels.com/photos/67636/rose-blue-flower-rose-blooms-67636.jpeg?auto=compress&cs=tinysrgb&h=350")
                        .build())
                    .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()
                        .height(20)
                        .width(30)
                        .x(69)
                        .y(0)
                        .build())
                    .build(),
                DashboardWidgetArgs.builder()
                    .logStreamDefinition(DashboardWidgetLogStreamDefinitionArgs.builder()
                        .columns(                        
                            "core_host",
                            "core_service",
                            "tag_source")
                        .indexes("main")
                        .messageDisplay("expanded-md")
                        .query("error")
                        .showDateColumn(true)
                        .showMessageColumn(true)
                        .sort(DashboardWidgetLogStreamDefinitionSortArgs.builder()
                            .column("time")
                            .order("desc")
                            .build())
                        .build())
                    .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()
                        .height(36)
                        .width(32)
                        .x(0)
                        .y(45)
                        .build())
                    .build(),
                DashboardWidgetArgs.builder()
                    .manageStatusDefinition(DashboardWidgetManageStatusDefinitionArgs.builder()
                        .colorPreference("text")
                        .displayFormat("countsAndList")
                        .hideZeroCounts(true)
                        .query("type:metric")
                        .showLastTriggered(false)
                        .sort("status,asc")
                        .summaryType("monitors")
                        .title("Widget Title")
                        .titleAlign("left")
                        .titleSize(16)
                        .build())
                    .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()
                        .height(40)
                        .width(30)
                        .x(101)
                        .y(48)
                        .build())
                    .build(),
                DashboardWidgetArgs.builder()
                    .traceServiceDefinition(DashboardWidgetTraceServiceDefinitionArgs.builder()
                        .displayFormat("three_column")
                        .env("datadog.com")
                        .liveSpan("1h")
                        .service("alerting-cassandra")
                        .showBreakdown(true)
                        .showDistribution(true)
                        .showErrors(true)
                        .showHits(true)
                        .showLatency(false)
                        .showResourceList(false)
                        .sizeFormat("large")
                        .spanName("cassandra.query")
                        .title("alerting-cassandra #env:datadog.com")
                        .titleAlign("center")
                        .titleSize("13")
                        .build())
                    .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()
                        .height(38)
                        .width(66)
                        .x(33)
                        .y(21)
                        .build())
                    .build(),
                DashboardWidgetArgs.builder()
                    .timeseriesDefinition(DashboardWidgetTimeseriesDefinitionArgs.builder()
                        .request(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
                        .build())
                    .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()
                        .height(16)
                        .width(25)
                        .x(58)
                        .y(83)
                        .build())
                    .build(),
                DashboardWidgetArgs.builder()
                    .timeseriesDefinition(DashboardWidgetTimeseriesDefinitionArgs.builder()
                        .request(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
                        .build())
                    .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()
                        .height(16)
                        .width(28)
                        .x(29)
                        .y(83)
                        .build())
                    .build(),
                DashboardWidgetArgs.builder()
                    .timeseriesDefinition(DashboardWidgetTimeseriesDefinitionArgs.builder()
                        .request(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
                        .build())
                    .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()
                        .height(16)
                        .width(28)
                        .x(0)
                        .y(83)
                        .build())
                    .build())
            .build());

    }
}
import pulumi
import pulumi_datadog as datadog

# Example Ordered Layout
ordered_dashboard = datadog.Dashboard("orderedDashboard",
    description="Created using the Datadog provider in Terraform",
    is_read_only=True,
    layout_type="ordered",
    template_variables=[
        datadog.DashboardTemplateVariableArgs(
            default="aws",
            name="var_1",
            prefix="host",
        ),
        datadog.DashboardTemplateVariableArgs(
            default="autoscaling",
            name="var_2",
            prefix="service_name",
        ),
    ],
    template_variable_presets=[datadog.DashboardTemplateVariablePresetArgs(
        name="preset_1",
        template_variables=[
            datadog.DashboardTemplateVariablePresetTemplateVariableArgs(
                name="var_1",
                value="host.dc",
            ),
            datadog.DashboardTemplateVariablePresetTemplateVariableArgs(
                name="var_2",
                value="my_service",
            ),
        ],
    )],
    title="Ordered Layout Dashboard",
    widgets=[
        datadog.DashboardWidgetArgs(
            alert_graph_definition=datadog.DashboardWidgetAlertGraphDefinitionArgs(
                alert_id="895605",
                live_span="1h",
                title="Widget Title",
                viz_type="timeseries",
            ),
        ),
        datadog.DashboardWidgetArgs(
            alert_value_definition=datadog.DashboardWidgetAlertValueDefinitionArgs(
                alert_id="895605",
                precision=3,
                text_align="center",
                title="Widget Title",
                unit="b",
            ),
        ),
        datadog.DashboardWidgetArgs(
            alert_value_definition=datadog.DashboardWidgetAlertValueDefinitionArgs(
                alert_id="895605",
                precision=3,
                text_align="center",
                title="Widget Title",
                unit="b",
            ),
        ),
        datadog.DashboardWidgetArgs(
            change_definition=datadog.DashboardWidgetChangeDefinitionArgs(
                live_span="1h",
                request=[{
                    "changeType": "absolute",
                    "compareTo": "week_before",
                    "increaseGood": True,
                    "orderBy": "name",
                    "orderDir": "desc",
                    "q": "avg:system.load.1{env:staging} by {account}",
                    "showPresent": True,
                }],
                title="Widget Title",
            ),
        ),
        datadog.DashboardWidgetArgs(
            distribution_definition=datadog.DashboardWidgetDistributionDefinitionArgs(
                live_span="1h",
                request=[{
                    "q": "avg:system.load.1{env:staging} by {account}",
                    "style": {
                        "palette": "warm",
                    },
                }],
                title="Widget Title",
            ),
        ),
        datadog.DashboardWidgetArgs(
            check_status_definition=datadog.DashboardWidgetCheckStatusDefinitionArgs(
                check="aws.ecs.agent_connected",
                group_by=[
                    "account",
                    "cluster",
                ],
                grouping="cluster",
                live_span="1h",
                tags=[
                    "account:demo",
                    "cluster:awseb-ruthebdog-env-8-dn3m6u3gvk",
                ],
                title="Widget Title",
            ),
        ),
        datadog.DashboardWidgetArgs(
            heatmap_definition=datadog.DashboardWidgetHeatmapDefinitionArgs(
                live_span="1h",
                request=[{
                    "q": "avg:system.load.1{env:staging} by {account}",
                    "style": {
                        "palette": "warm",
                    },
                }],
                title="Widget Title",
                yaxis=datadog.DashboardWidgetHeatmapDefinitionYaxisArgs(
                    include_zero=True,
                    max="2",
                    min="1",
                    scale="sqrt",
                ),
            ),
        ),
        datadog.DashboardWidgetArgs(
            hostmap_definition=datadog.DashboardWidgetHostmapDefinitionArgs(
                group=[
                    "host",
                    "region",
                ],
                no_group_hosts=True,
                no_metric_hosts=True,
                node_type="container",
                request=datadog.DashboardWidgetHostmapDefinitionRequestArgs(
                    fill=[{
                        "q": "avg:system.load.1{*} by {host}",
                    }],
                    size=[{
                        "q": "avg:memcache.uptime{*} by {host}",
                    }],
                ),
                scope=[
                    "region:us-east-1",
                    "aws_account:727006795293",
                ],
                style=datadog.DashboardWidgetHostmapDefinitionStyleArgs(
                    fill_max="20",
                    fill_min="10",
                    palette="yellow_to_green",
                    palette_flip=True,
                ),
                title="Widget Title",
            ),
        ),
        datadog.DashboardWidgetArgs(
            note_definition=datadog.DashboardWidgetNoteDefinitionArgs(
                background_color="pink",
                content="note text",
                font_size="14",
                show_tick=True,
                text_align="center",
                tick_edge="left",
                tick_pos="50%",
            ),
        ),
        datadog.DashboardWidgetArgs(
            query_value_definition=datadog.DashboardWidgetQueryValueDefinitionArgs(
                autoscale=True,
                custom_unit="xx",
                live_span="1h",
                precision=4,
                request=[{
                    "aggregator": "sum",
                    "conditionalFormats": [
                        {
                            "comparator": "<",
                            "palette": "white_on_green",
                            "value": "2",
                        },
                        {
                            "comparator": ">",
                            "palette": "white_on_red",
                            "value": "2.2",
                        },
                    ],
                    "q": "avg:system.load.1{env:staging} by {account}",
                }],
                text_align="right",
                title="Widget Title",
            ),
        ),
        datadog.DashboardWidgetArgs(
            query_table_definition=datadog.DashboardWidgetQueryTableDefinitionArgs(
                live_span="1h",
                request=[{
                    "aggregator": "sum",
                    "conditionalFormats": [
                        {
                            "comparator": "<",
                            "palette": "white_on_green",
                            "value": "2",
                        },
                        {
                            "comparator": ">",
                            "palette": "white_on_red",
                            "value": "2.2",
                        },
                    ],
                    "limit": "10",
                    "q": "avg:system.load.1{env:staging} by {account}",
                }],
                title="Widget Title",
            ),
        ),
        datadog.DashboardWidgetArgs(
            scatterplot_definition=datadog.DashboardWidgetScatterplotDefinitionArgs(
                color_by_groups=[
                    "account",
                    "apm-role-group",
                ],
                live_span="1h",
                request=datadog.DashboardWidgetScatterplotDefinitionRequestArgs(
                    x=[{
                        "aggregator": "max",
                        "q": "avg:system.cpu.user{*} by {service, account}",
                    }],
                    y=[{
                        "aggregator": "min",
                        "q": "avg:system.mem.used{*} by {service, account}",
                    }],
                ),
                title="Widget Title",
                xaxis=datadog.DashboardWidgetScatterplotDefinitionXaxisArgs(
                    include_zero=True,
                    label="x",
                    max="2000",
                    min="1",
                    scale="pow",
                ),
                yaxis=datadog.DashboardWidgetScatterplotDefinitionYaxisArgs(
                    include_zero=False,
                    label="y",
                    max="2222",
                    min="5",
                    scale="log",
                ),
            ),
        ),
        datadog.DashboardWidgetArgs(
            servicemap_definition=datadog.DashboardWidgetServicemapDefinitionArgs(
                filters=[
                    "env:prod",
                    "datacenter:dc1",
                ],
                service="master-db",
                title="env: prod, datacenter:dc1, service: master-db",
                title_align="left",
                title_size="16",
            ),
        ),
        datadog.DashboardWidgetArgs(
            timeseries_definition=datadog.DashboardWidgetTimeseriesDefinitionArgs(
                event=[
                    {
                        "q": "sources:test tags:1",
                    },
                    {
                        "q": "sources:test tags:2",
                    },
                ],
                legend_size="2",
                live_span="1h",
                marker=[
                    {
                        "displayType": "error dashed",
                        "label": " z=6 ",
                        "value": "y = 4",
                    },
                    {
                        "displayType": "ok solid",
                        "label": " x=8 ",
                        "value": "10 < y < 999",
                    },
                ],
                request=[
                    {
                        "displayType": "line",
                        "metadata": [{
                            "aliasName": "Alpha",
                            "expression": "avg:system.cpu.user{app:general} by {env}",
                        }],
                        "q": "avg:system.cpu.user{app:general} by {env}",
                        "style": {
                            "lineType": "dashed",
                            "lineWidth": "thin",
                            "palette": "warm",
                        },
                    },
                    {
                        "displayType": "area",
                        "logQuery": {
                            "computeQuery": {
                                "aggregation": "avg",
                                "facet": "@duration",
                                "interval": 5000,
                            },
                            "groupBy": [{
                                "facet": "host",
                                "limit": 10,
                                "sortQuery": {
                                    "aggregation": "avg",
                                    "facet": "@duration",
                                    "order": "desc",
                                },
                            }],
                            "index": "mcnulty",
                            "searchQuery": "status:info",
                        },
                    },
                    {
                        "apmQuery": {
                            "computeQuery": {
                                "aggregation": "avg",
                                "facet": "@duration",
                                "interval": 5000,
                            },
                            "groupBy": [{
                                "facet": "resource_name",
                                "limit": 50,
                                "sortQuery": {
                                    "aggregation": "avg",
                                    "facet": "@string_query.interval",
                                    "order": "desc",
                                },
                            }],
                            "index": "apm-search",
                            "searchQuery": "type:web",
                        },
                        "displayType": "bars",
                    },
                    {
                        "displayType": "area",
                        "processQuery": {
                            "filterBy": ["active"],
                            "limit": 50,
                            "metric": "process.stat.cpu.total_pct",
                            "searchBy": "error",
                        },
                    },
                ],
                show_legend=True,
                title="Widget Title",
                yaxis=datadog.DashboardWidgetTimeseriesDefinitionYaxisArgs(
                    include_zero=False,
                    max="100",
                    scale="log",
                ),
            ),
        ),
        datadog.DashboardWidgetArgs(
            toplist_definition=datadog.DashboardWidgetToplistDefinitionArgs(
                request=[{
                    "conditionalFormats": [
                        {
                            "comparator": "<",
                            "palette": "white_on_green",
                            "value": "2",
                        },
                        {
                            "comparator": ">",
                            "palette": "white_on_red",
                            "value": "2.2",
                        },
                    ],
                    "q": "avg:system.cpu.user{app:general} by {env}",
                }],
                title="Widget Title",
            ),
        ),
        datadog.DashboardWidgetArgs(
            group_definition=datadog.DashboardWidgetGroupDefinitionArgs(
                layout_type="ordered",
                title="Group Widget",
                widget=[
                    {
                        "noteDefinition": {
                            "backgroundColor": "pink",
                            "content": "cluster note widget",
                            "fontSize": "14",
                            "showTick": True,
                            "textAlign": "center",
                            "tickEdge": "left",
                            "tickPos": "50%",
                        },
                    },
                    {
                        "alertGraphDefinition": {
                            "alertId": "123",
                            "liveSpan": "1h",
                            "title": "Alert Graph",
                            "vizType": "toplist",
                        },
                    },
                ],
            ),
        ),
        datadog.DashboardWidgetArgs(
            service_level_objective_definition=datadog.DashboardWidgetServiceLevelObjectiveDefinitionArgs(
                show_error_budget=True,
                slo_id="56789",
                time_windows=[
                    "7d",
                    "previous_week",
                ],
                title="Widget Title",
                view_mode="overall",
                view_type="detail",
            ),
        ),
    ])
# Example Free Layout
free_dashboard = datadog.Dashboard("freeDashboard",
    description="Created using the Datadog provider in Terraform",
    is_read_only=False,
    layout_type="free",
    template_variables=[
        datadog.DashboardTemplateVariableArgs(
            default="aws",
            name="var_1",
            prefix="host",
        ),
        datadog.DashboardTemplateVariableArgs(
            default="autoscaling",
            name="var_2",
            prefix="service_name",
        ),
    ],
    template_variable_presets=[datadog.DashboardTemplateVariablePresetArgs(
        name="preset_1",
        template_variables=[
            datadog.DashboardTemplateVariablePresetTemplateVariableArgs(
                name="var_1",
                value="host.dc",
            ),
            datadog.DashboardTemplateVariablePresetTemplateVariableArgs(
                name="var_2",
                value="my_service",
            ),
        ],
    )],
    title="Free Layout Dashboard",
    widgets=[
        datadog.DashboardWidgetArgs(
            event_stream_definition=datadog.DashboardWidgetEventStreamDefinitionArgs(
                event_size="l",
                live_span="1h",
                query="*",
                title="Widget Title",
                title_align="left",
                title_size="16",
            ),
            widget_layout=datadog.DashboardWidgetWidgetLayoutArgs(
                height=43,
                width=32,
                x=0,
                y=0,
            ),
        ),
        datadog.DashboardWidgetArgs(
            event_timeline_definition=datadog.DashboardWidgetEventTimelineDefinitionArgs(
                live_span="1h",
                query="*",
                title="Widget Title",
                title_align="left",
                title_size="16",
            ),
            widget_layout=datadog.DashboardWidgetWidgetLayoutArgs(
                height=9,
                width=66,
                x=33,
                y=60,
            ),
        ),
        datadog.DashboardWidgetArgs(
            free_text_definition=datadog.DashboardWidgetFreeTextDefinitionArgs(
                color="#d00",
                font_size="36",
                text="free text content",
                text_align="left",
            ),
            widget_layout=datadog.DashboardWidgetWidgetLayoutArgs(
                height=20,
                width=34,
                x=33,
                y=0,
            ),
        ),
        datadog.DashboardWidgetArgs(
            iframe_definition=datadog.DashboardWidgetIframeDefinitionArgs(
                url="http://google.com",
            ),
            widget_layout=datadog.DashboardWidgetWidgetLayoutArgs(
                height=46,
                width=39,
                x=101,
                y=0,
            ),
        ),
        datadog.DashboardWidgetArgs(
            image_definition=datadog.DashboardWidgetImageDefinitionArgs(
                margin="small",
                sizing="fit",
                url="https://images.pexels.com/photos/67636/rose-blue-flower-rose-blooms-67636.jpeg?auto=compress&cs=tinysrgb&h=350",
            ),
            widget_layout=datadog.DashboardWidgetWidgetLayoutArgs(
                height=20,
                width=30,
                x=69,
                y=0,
            ),
        ),
        datadog.DashboardWidgetArgs(
            log_stream_definition=datadog.DashboardWidgetLogStreamDefinitionArgs(
                columns=[
                    "core_host",
                    "core_service",
                    "tag_source",
                ],
                indexes=["main"],
                message_display="expanded-md",
                query="error",
                show_date_column=True,
                show_message_column=True,
                sort=datadog.DashboardWidgetLogStreamDefinitionSortArgs(
                    column="time",
                    order="desc",
                ),
            ),
            widget_layout=datadog.DashboardWidgetWidgetLayoutArgs(
                height=36,
                width=32,
                x=0,
                y=45,
            ),
        ),
        datadog.DashboardWidgetArgs(
            manage_status_definition=datadog.DashboardWidgetManageStatusDefinitionArgs(
                color_preference="text",
                display_format="countsAndList",
                hide_zero_counts=True,
                query="type:metric",
                show_last_triggered=False,
                sort="status,asc",
                summary_type="monitors",
                title="Widget Title",
                title_align="left",
                title_size="16",
            ),
            widget_layout=datadog.DashboardWidgetWidgetLayoutArgs(
                height=40,
                width=30,
                x=101,
                y=48,
            ),
        ),
        datadog.DashboardWidgetArgs(
            trace_service_definition=datadog.DashboardWidgetTraceServiceDefinitionArgs(
                display_format="three_column",
                env="datadog.com",
                live_span="1h",
                service="alerting-cassandra",
                show_breakdown=True,
                show_distribution=True,
                show_errors=True,
                show_hits=True,
                show_latency=False,
                show_resource_list=False,
                size_format="large",
                span_name="cassandra.query",
                title="alerting-cassandra #env:datadog.com",
                title_align="center",
                title_size="13",
            ),
            widget_layout=datadog.DashboardWidgetWidgetLayoutArgs(
                height=38,
                width=66,
                x=33,
                y=21,
            ),
        ),
        datadog.DashboardWidgetArgs(
            timeseries_definition=datadog.DashboardWidgetTimeseriesDefinitionArgs(
                request=[{
                    "formula": [
                        {
                            "alias": "my ff query",
                            "formulaExpression": "my_query_1 + my_query_2",
                        },
                        {
                            "alias": "my second ff query",
                            "formulaExpression": "my_query_1 * my_query_2",
                            "limit": {
                                "count": 5,
                                "order": "desc",
                            },
                        },
                    ],
                    "query": [
                        {
                            "metricQuery": {
                                "aggregator": "sum",
                                "dataSource": "metrics",
                                "name": "my_query_1",
                                "query": "avg:system.cpu.user{app:general} by {env}",
                            },
                        },
                        {
                            "metricQuery": {
                                "aggregator": "sum",
                                "name": "my_query_2",
                                "query": "avg:system.cpu.user{app:general} by {env}",
                            },
                        },
                    ],
                }],
            ),
            widget_layout=datadog.DashboardWidgetWidgetLayoutArgs(
                height=16,
                width=25,
                x=58,
                y=83,
            ),
        ),
        datadog.DashboardWidgetArgs(
            timeseries_definition=datadog.DashboardWidgetTimeseriesDefinitionArgs(
                request=[{
                    "query": [{
                        "eventQuery": {
                            "compute": [{
                                "aggregation": "count",
                            }],
                            "dataSource": "logs",
                            "groupBy": [{
                                "facet": "host",
                                "limit": 10,
                                "sort": {
                                    "aggregation": "avg",
                                    "metric": "@lambda.max_memory_used",
                                },
                            }],
                            "indexes": ["days-3"],
                            "name": "my-query",
                        },
                    }],
                }],
            ),
            widget_layout=datadog.DashboardWidgetWidgetLayoutArgs(
                height=16,
                width=28,
                x=29,
                y=83,
            ),
        ),
        datadog.DashboardWidgetArgs(
            timeseries_definition=datadog.DashboardWidgetTimeseriesDefinitionArgs(
                request=[{
                    "query": [{
                        "processQuery": {
                            "aggregator": "sum",
                            "dataSource": "process",
                            "isNormalizedCpu": True,
                            "limit": 10,
                            "metric": "process.stat.cpu.total_pct",
                            "name": "my_process_query",
                            "sort": "asc",
                            "tagFilters": ["some_filter"],
                            "textFilter": "abc",
                        },
                    }],
                }],
            ),
            widget_layout=datadog.DashboardWidgetWidgetLayoutArgs(
                height=16,
                width=28,
                x=0,
                y=83,
            ),
        ),
    ])
import * as pulumi from "@pulumi/pulumi";
import * as datadog from "@pulumi/datadog";

// Example Ordered Layout
const orderedDashboard = new datadog.Dashboard("ordered_dashboard", {
    description: "Created using the Datadog provider in Terraform",
    isReadOnly: true,
    layoutType: "ordered",
    templateVariables: [
        {
            default: "aws",
            name: "var_1",
            prefix: "host",
        },
        {
            default: "autoscaling",
            name: "var_2",
            prefix: "service_name",
        },
    ],
    templateVariablePresets: [{
        name: "preset_1",
        templateVariables: [
            {
                name: "var_1",
                value: "host.dc",
            },
            {
                name: "var_2",
                value: "my_service",
            },
        ],
    }],
    title: "Ordered Layout Dashboard",
    widgets: [
        {
            alertGraphDefinition: {
                alertId: "895605",
                liveSpan: "1h",
                title: "Widget Title",
                vizType: "timeseries",
            },
        },
        {
            alertValueDefinition: {
                alertId: "895605",
                precision: 3,
                textAlign: "center",
                title: "Widget Title",
                unit: "b",
            },
        },
        {
            alertValueDefinition: {
                alertId: "895605",
                precision: 3,
                textAlign: "center",
                title: "Widget Title",
                unit: "b",
            },
        },
        {
            changeDefinition: {
                liveSpan: "1h",
                requests: [{
                    changeType: "absolute",
                    compareTo: "week_before",
                    increaseGood: true,
                    orderBy: "name",
                    orderDir: "desc",
                    q: "avg:system.load.1{env:staging} by {account}",
                    showPresent: true,
                }],
                title: "Widget Title",
            },
        },
        {
            distributionDefinition: {
                liveSpan: "1h",
                requests: [{
                    q: "avg:system.load.1{env:staging} by {account}",
                    style: {
                        palette: "warm",
                    },
                }],
                title: "Widget Title",
            },
        },
        {
            checkStatusDefinition: {
                check: "aws.ecs.agent_connected",
                groupBies: [
                    "account",
                    "cluster",
                ],
                grouping: "cluster",
                liveSpan: "1h",
                tags: [
                    "account:demo",
                    "cluster:awseb-ruthebdog-env-8-dn3m6u3gvk",
                ],
                title: "Widget Title",
            },
        },
        {
            heatmapDefinition: {
                liveSpan: "1h",
                requests: [{
                    q: "avg:system.load.1{env:staging} by {account}",
                    style: {
                        palette: "warm",
                    },
                }],
                title: "Widget Title",
                yaxis: {
                    includeZero: true,
                    max: "2",
                    min: "1",
                    scale: "sqrt",
                },
            },
        },
        {
            hostmapDefinition: {
                groups: [
                    "host",
                    "region",
                ],
                noGroupHosts: true,
                noMetricHosts: true,
                nodeType: "container",
                request: {
                    fills: [{
                        q: "avg:system.load.1{*} by {host}",
                    }],
                    sizes: [{
                        q: "avg:memcache.uptime{*} by {host}",
                    }],
                },
                scopes: [
                    "region:us-east-1",
                    "aws_account:727006795293",
                ],
                style: {
                    fillMax: "20",
                    fillMin: "10",
                    palette: "yellow_to_green",
                    paletteFlip: true,
                },
                title: "Widget Title",
            },
        },
        {
            noteDefinition: {
                backgroundColor: "pink",
                content: "note text",
                fontSize: "14",
                showTick: true,
                textAlign: "center",
                tickEdge: "left",
                tickPos: "50%",
            },
        },
        {
            queryValueDefinition: {
                autoscale: true,
                customUnit: "xx",
                liveSpan: "1h",
                precision: 4,
                requests: [{
                    aggregator: "sum",
                    conditionalFormats: [
                        {
                            comparator: "<",
                            palette: "white_on_green",
                            value: 2,
                        },
                        {
                            comparator: ">",
                            palette: "white_on_red",
                            value: 2.2,
                        },
                    ],
                    q: "avg:system.load.1{env:staging} by {account}",
                }],
                textAlign: "right",
                title: "Widget Title",
            },
        },
        {
            queryTableDefinition: {
                liveSpan: "1h",
                requests: [{
                    aggregator: "sum",
                    conditionalFormats: [
                        {
                            comparator: "<",
                            palette: "white_on_green",
                            value: 2,
                        },
                        {
                            comparator: ">",
                            palette: "white_on_red",
                            value: 2.2,
                        },
                    ],
                    limit: 10,
                    q: "avg:system.load.1{env:staging} by {account}",
                }],
                title: "Widget Title",
            },
        },
        {
            scatterplotDefinition: {
                colorByGroups: [
                    "account",
                    "apm-role-group",
                ],
                liveSpan: "1h",
                request: {
                    xes: [{
                        aggregator: "max",
                        q: "avg:system.cpu.user{*} by {service, account}",
                    }],
                    ys: [{
                        aggregator: "min",
                        q: "avg:system.mem.used{*} by {service, account}",
                    }],
                },
                title: "Widget Title",
                xaxis: {
                    includeZero: true,
                    label: "x",
                    max: "2000",
                    min: "1",
                    scale: "pow",
                },
                yaxis: {
                    includeZero: false,
                    label: "y",
                    max: "2222",
                    min: "5",
                    scale: "log",
                },
            },
        },
        {
            servicemapDefinition: {
                filters: [
                    "env:prod",
                    "datacenter:dc1",
                ],
                service: "master-db",
                title: "env: prod, datacenter:dc1, service: master-db",
                titleAlign: "left",
                titleSize: "16",
            },
        },
        {
            timeseriesDefinition: {
                events: [
                    {
                        q: "sources:test tags:1",
                    },
                    {
                        q: "sources:test tags:2",
                    },
                ],
                legendSize: "2",
                liveSpan: "1h",
                markers: [
                    {
                        displayType: "error dashed",
                        label: " z=6 ",
                        value: "y = 4",
                    },
                    {
                        displayType: "ok solid",
                        label: " x=8 ",
                        value: "10 < y < 999",
                    },
                ],
                requests: [
                    {
                        displayType: "line",
                        metadatas: [{
                            aliasName: "Alpha",
                            expression: "avg:system.cpu.user{app:general} by {env}",
                        }],
                        q: "avg:system.cpu.user{app:general} by {env}",
                        style: {
                            lineType: "dashed",
                            lineWidth: "thin",
                            palette: "warm",
                        },
                    },
                    {
                        displayType: "area",
                        logQuery: {
                            computeQuery: {
                                aggregation: "avg",
                                facet: "@duration",
                                interval: 5000,
                            },
                            groupBies: [{
                                facet: "host",
                                limit: 10,
                                sortQuery: {
                                    aggregation: "avg",
                                    facet: "@duration",
                                    order: "desc",
                                },
                            }],
                            index: "mcnulty",
                            searchQuery: "status:info",
                        },
                    },
                    {
                        apmQuery: {
                            computeQuery: {
                                aggregation: "avg",
                                facet: "@duration",
                                interval: 5000,
                            },
                            groupBies: [{
                                facet: "resource_name",
                                limit: 50,
                                sortQuery: {
                                    aggregation: "avg",
                                    facet: "@string_query.interval",
                                    order: "desc",
                                },
                            }],
                            index: "apm-search",
                            searchQuery: "type:web",
                        },
                        displayType: "bars",
                    },
                    {
                        displayType: "area",
                        processQuery: {
                            filterBies: ["active"],
                            limit: 50,
                            metric: "process.stat.cpu.total_pct",
                            searchBy: "error",
                        },
                    },
                ],
                showLegend: true,
                title: "Widget Title",
                yaxis: {
                    includeZero: false,
                    max: "100",
                    scale: "log",
                },
            },
        },
        {
            toplistDefinition: {
                requests: [{
                    conditionalFormats: [
                        {
                            comparator: "<",
                            palette: "white_on_green",
                            value: 2,
                        },
                        {
                            comparator: ">",
                            palette: "white_on_red",
                            value: 2.2,
                        },
                    ],
                    q: "avg:system.cpu.user{app:general} by {env}",
                }],
                title: "Widget Title",
            },
        },
        {
            groupDefinition: {
                layoutType: "ordered",
                title: "Group Widget",
                widgets: [
                    {
                        noteDefinition: {
                            backgroundColor: "pink",
                            content: "cluster note widget",
                            fontSize: "14",
                            showTick: true,
                            textAlign: "center",
                            tickEdge: "left",
                            tickPos: "50%",
                        },
                    },
                    {
                        alertGraphDefinition: {
                            alertId: "123",
                            liveSpan: "1h",
                            title: "Alert Graph",
                            vizType: "toplist",
                        },
                    },
                ],
            },
        },
        {
            serviceLevelObjectiveDefinition: {
                showErrorBudget: true,
                sloId: "56789",
                timeWindows: [
                    "7d",
                    "previous_week",
                ],
                title: "Widget Title",
                viewMode: "overall",
                viewType: "detail",
            },
        },
    ],
});
// Example Free Layout
const freeDashboard = new datadog.Dashboard("free_dashboard", {
    description: "Created using the Datadog provider in Terraform",
    isReadOnly: false,
    layoutType: "free",
    templateVariables: [
        {
            default: "aws",
            name: "var_1",
            prefix: "host",
        },
        {
            default: "autoscaling",
            name: "var_2",
            prefix: "service_name",
        },
    ],
    templateVariablePresets: [{
        name: "preset_1",
        templateVariables: [
            {
                name: "var_1",
                value: "host.dc",
            },
            {
                name: "var_2",
                value: "my_service",
            },
        ],
    }],
    title: "Free Layout Dashboard",
    widgets: [
        {
            eventStreamDefinition: {
                eventSize: "l",
                liveSpan: "1h",
                query: "*",
                title: "Widget Title",
                titleAlign: "left",
                titleSize: "16",
            },
            widgetLayout: {
                height: 43,
                width: 32,
                x: 0,
                y: 0,
            },
        },
        {
            eventTimelineDefinition: {
                liveSpan: "1h",
                query: "*",
                title: "Widget Title",
                titleAlign: "left",
                titleSize: "16",
            },
            widgetLayout: {
                height: 9,
                width: 66,
                x: 33,
                y: 60,
            },
        },
        {
            freeTextDefinition: {
                color: "#d00",
                fontSize: "36",
                text: "free text content",
                textAlign: "left",
            },
            widgetLayout: {
                height: 20,
                width: 34,
                x: 33,
                y: 0,
            },
        },
        {
            iframeDefinition: {
                url: "http://google.com",
            },
            widgetLayout: {
                height: 46,
                width: 39,
                x: 101,
                y: 0,
            },
        },
        {
            imageDefinition: {
                margin: "small",
                sizing: "fit",
                url: "https://images.pexels.com/photos/67636/rose-blue-flower-rose-blooms-67636.jpeg?auto=compress&cs=tinysrgb&h=350",
            },
            widgetLayout: {
                height: 20,
                width: 30,
                x: 69,
                y: 0,
            },
        },
        {
            logStreamDefinition: {
                columns: [
                    "core_host",
                    "core_service",
                    "tag_source",
                ],
                indexes: ["main"],
                messageDisplay: "expanded-md",
                query: "error",
                showDateColumn: true,
                showMessageColumn: true,
                sort: {
                    column: "time",
                    order: "desc",
                },
            },
            widgetLayout: {
                height: 36,
                width: 32,
                x: 0,
                y: 45,
            },
        },
        {
            manageStatusDefinition: {
                colorPreference: "text",
                displayFormat: "countsAndList",
                hideZeroCounts: true,
                query: "type:metric",
                showLastTriggered: false,
                sort: "status,asc",
                summaryType: "monitors",
                title: "Widget Title",
                titleAlign: "left",
                titleSize: "16",
            },
            widgetLayout: {
                height: 40,
                width: 30,
                x: 101,
                y: 48,
            },
        },
        {
            traceServiceDefinition: {
                displayFormat: "three_column",
                env: "datadog.com",
                liveSpan: "1h",
                service: "alerting-cassandra",
                showBreakdown: true,
                showDistribution: true,
                showErrors: true,
                showHits: true,
                showLatency: false,
                showResourceList: false,
                sizeFormat: "large",
                spanName: "cassandra.query",
                title: "alerting-cassandra #env:datadog.com",
                titleAlign: "center",
                titleSize: "13",
            },
            widgetLayout: {
                height: 38,
                width: 66,
                x: 33,
                y: 21,
            },
        },
        {
            timeseriesDefinition: {
                requests: [{
                    formulas: [
                        {
                            alias: "my ff query",
                            formulaExpression: "my_query_1 + my_query_2",
                        },
                        {
                            alias: "my second ff query",
                            formulaExpression: "my_query_1 * my_query_2",
                            limit: {
                                count: 5,
                                order: "desc",
                            },
                        },
                    ],
                    queries: [
                        {
                            metricQuery: {
                                aggregator: "sum",
                                dataSource: "metrics",
                                name: "my_query_1",
                                query: "avg:system.cpu.user{app:general} by {env}",
                            },
                        },
                        {
                            metricQuery: {
                                aggregator: "sum",
                                name: "my_query_2",
                                query: "avg:system.cpu.user{app:general} by {env}",
                            },
                        },
                    ],
                }],
            },
            widgetLayout: {
                height: 16,
                width: 25,
                x: 58,
                y: 83,
            },
        },
        {
            timeseriesDefinition: {
                requests: [{
                    queries: [{
                        eventQuery: {
                            computes: [{
                                aggregation: "count",
                            }],
                            dataSource: "logs",
                            groupBies: [{
                                facet: "host",
                                limit: 10,
                                sort: {
                                    aggregation: "avg",
                                    metric: "@lambda.max_memory_used",
                                },
                            }],
                            indexes: ["days-3"],
                            name: "my-query",
                        },
                    }],
                }],
            },
            widgetLayout: {
                height: 16,
                width: 28,
                x: 29,
                y: 83,
            },
        },
        {
            timeseriesDefinition: {
                requests: [{
                    queries: [{
                        processQuery: {
                            aggregator: "sum",
                            dataSource: "process",
                            isNormalizedCpu: true,
                            limit: 10,
                            metric: "process.stat.cpu.total_pct",
                            name: "my_process_query",
                            sort: "asc",
                            tagFilters: ["some_filter"],
                            textFilter: "abc",
                        },
                    }],
                }],
            },
            widgetLayout: {
                height: 16,
                width: 28,
                x: 0,
                y: 83,
            },
        },
    ],
});
resources:
  orderedDashboard:
    type: datadog:Dashboard
    properties:
      description: Created using the Datadog provider in Terraform
      isReadOnly: true
      layoutType: ordered
      templateVariables:
        - default: aws
          name: var_1
          prefix: host
        - default: autoscaling
          name: var_2
          prefix: service_name
      templateVariablePresets:
        - name: preset_1
          templateVariables:
            - name: var_1
              value: host.dc
            - name: var_2
              value: my_service
      title: Ordered Layout Dashboard
      widgets:
        - alertGraphDefinition:
            alertId: 895605
            liveSpan: 1h
            title: Widget Title
            vizType: timeseries
        - alertValueDefinition:
            alertId: 895605
            precision: 3
            textAlign: center
            title: Widget Title
            unit: b
        - alertValueDefinition:
            alertId: 895605
            precision: 3
            textAlign: center
            title: Widget Title
            unit: b
        - changeDefinition:
            liveSpan: 1h
            request:
              - changeType: absolute
                compareTo: week_before
                increaseGood: true
                orderBy: name
                orderDir: desc
                q: avg:system.load.1{env:staging} by {account}
                showPresent: true
            title: Widget Title
        - distributionDefinition:
            liveSpan: 1h
            request:
              - q: avg:system.load.1{env:staging} by {account}
                style:
                  palette: warm
            title: Widget Title
        - checkStatusDefinition:
            check: aws.ecs.agent_connected
            groupBy:
              - account
              - cluster
            grouping: cluster
            liveSpan: 1h
            tags:
              - account:demo
              - cluster:awseb-ruthebdog-env-8-dn3m6u3gvk
            title: Widget Title
        - heatmapDefinition:
            liveSpan: 1h
            request:
              - q: avg:system.load.1{env:staging} by {account}
                style:
                  palette: warm
            title: Widget Title
            yaxis:
              includeZero: true
              max: 2
              min: 1
              scale: sqrt
        - hostmapDefinition:
            group:
              - host
              - region
            noGroupHosts: true
            noMetricHosts: true
            nodeType: container
            request:
              fill:
                - q: avg:system.load.1{*} by {host}
              size:
                - q: avg:memcache.uptime{*} by {host}
            scope:
              - region:us-east-1
              - aws_account:727006795293
            style:
              fillMax: 20
              fillMin: 10
              palette: yellow_to_green
              paletteFlip: true
            title: Widget Title
        - noteDefinition:
            backgroundColor: pink
            content: note text
            fontSize: 14
            showTick: true
            textAlign: center
            tickEdge: left
            tickPos: 50%
        - queryValueDefinition:
            autoscale: true
            customUnit: xx
            liveSpan: 1h
            precision: 4
            request:
              - aggregator: sum
                conditionalFormats:
                  - comparator: <
                    palette: white_on_green
                    value: 2
                  - comparator: '>'
                    palette: white_on_red
                    value: 2.2
                q: avg:system.load.1{env:staging} by {account}
            textAlign: right
            title: Widget Title
        - queryTableDefinition:
            liveSpan: 1h
            request:
              - aggregator: sum
                conditionalFormats:
                  - comparator: <
                    palette: white_on_green
                    value: 2
                  - comparator: '>'
                    palette: white_on_red
                    value: 2.2
                limit: 10
                q: avg:system.load.1{env:staging} by {account}
            title: Widget Title
        - scatterplotDefinition:
            colorByGroups:
              - account
              - apm-role-group
            liveSpan: 1h
            request:
              x:
                - aggregator: max
                  q: avg:system.cpu.user{*} by {service, account}
              y:
                - aggregator: min
                  q: avg:system.mem.used{*} by {service, account}
            title: Widget Title
            xaxis:
              includeZero: true
              label: x
              max: 2000
              min: 1
              scale: pow
            yaxis:
              includeZero: false
              label: y
              max: 2222
              min: 5
              scale: log
        - servicemapDefinition:
            filters:
              - env:prod
              - datacenter:dc1
            service: master-db
            title: 'env: prod, datacenter:dc1, service: master-db'
            titleAlign: left
            titleSize: 16
        - timeseriesDefinition:
            event:
              - q: sources:test tags:1
              - q: sources:test tags:2
            legendSize: 2
            liveSpan: 1h
            marker:
              - displayType: error dashed
                label: ' z=6 '
                value: y = 4
              - displayType: ok solid
                label: ' x=8 '
                value: 10 < y < 999
            request:
              - displayType: line
                metadata:
                  - aliasName: Alpha
                    expression: avg:system.cpu.user{app:general} by {env}
                q: avg:system.cpu.user{app:general} by {env}
                style:
                  lineType: dashed
                  lineWidth: thin
                  palette: warm
              - displayType: area
                logQuery:
                  computeQuery:
                    aggregation: avg
                    facet: '@duration'
                    interval: 5000
                  groupBy:
                    - facet: host
                      limit: 10
                      sortQuery:
                        aggregation: avg
                        facet: '@duration'
                        order: desc
                  index: mcnulty
                  searchQuery: status:info
              - apmQuery:
                  computeQuery:
                    aggregation: avg
                    facet: '@duration'
                    interval: 5000
                  groupBy:
                    - facet: resource_name
                      limit: 50
                      sortQuery:
                        aggregation: avg
                        facet: '@string_query.interval'
                        order: desc
                  index: apm-search
                  searchQuery: type:web
                displayType: bars
              - displayType: area
                processQuery:
                  filterBy:
                    - active
                  limit: 50
                  metric: process.stat.cpu.total_pct
                  searchBy: error
            showLegend: true
            title: Widget Title
            yaxis:
              includeZero: false
              max: 100
              scale: log
        - toplistDefinition:
            request:
              - conditionalFormats:
                  - comparator: <
                    palette: white_on_green
                    value: 2
                  - comparator: '>'
                    palette: white_on_red
                    value: 2.2
                q: avg:system.cpu.user{app:general} by {env}
            title: Widget Title
        - groupDefinition:
            layoutType: ordered
            title: Group Widget
            widget:
              - noteDefinition:
                  backgroundColor: pink
                  content: cluster note widget
                  fontSize: 14
                  showTick: true
                  textAlign: center
                  tickEdge: left
                  tickPos: 50%
              - alertGraphDefinition:
                  alertId: 123
                  liveSpan: 1h
                  title: Alert Graph
                  vizType: toplist
        - serviceLevelObjectiveDefinition:
            showErrorBudget: true
            sloId: 56789
            timeWindows:
              - 7d
              - previous_week
            title: Widget Title
            viewMode: overall
            viewType: detail
  freeDashboard:
    type: datadog:Dashboard
    properties:
      description: Created using the Datadog provider in Terraform
      isReadOnly: false
      layoutType: free
      templateVariables:
        - default: aws
          name: var_1
          prefix: host
        - default: autoscaling
          name: var_2
          prefix: service_name
      templateVariablePresets:
        - name: preset_1
          templateVariables:
            - name: var_1
              value: host.dc
            - name: var_2
              value: my_service
      title: Free Layout Dashboard
      widgets:
        - eventStreamDefinition:
            eventSize: l
            liveSpan: 1h
            query: '*'
            title: Widget Title
            titleAlign: left
            titleSize: 16
          widgetLayout:
            height: 43
            width: 32
            x: 0
            y: 0
        - eventTimelineDefinition:
            liveSpan: 1h
            query: '*'
            title: Widget Title
            titleAlign: left
            titleSize: 16
          widgetLayout:
            height: 9
            width: 66
            x: 33
            y: 60
        - freeTextDefinition:
            color: '#d00'
            fontSize: 36
            text: free text content
            textAlign: left
          widgetLayout:
            height: 20
            width: 34
            x: 33
            y: 0
        - iframeDefinition:
            url: http://google.com
          widgetLayout:
            height: 46
            width: 39
            x: 101
            y: 0
        - imageDefinition:
            margin: small
            sizing: fit
            url: https://images.pexels.com/photos/67636/rose-blue-flower-rose-blooms-67636.jpeg?auto=compress&cs=tinysrgb&h=350
          widgetLayout:
            height: 20
            width: 30
            x: 69
            y: 0
        - logStreamDefinition:
            columns:
              - core_host
              - core_service
              - tag_source
            indexes:
              - main
            messageDisplay: expanded-md
            query: error
            showDateColumn: true
            showMessageColumn: true
            sort:
              column: time
              order: desc
          widgetLayout:
            height: 36
            width: 32
            x: 0
            y: 45
        - manageStatusDefinition:
            colorPreference: text
            displayFormat: countsAndList
            hideZeroCounts: true
            query: type:metric
            showLastTriggered: false
            sort: status,asc
            summaryType: monitors
            title: Widget Title
            titleAlign: left
            titleSize: 16
          widgetLayout:
            height: 40
            width: 30
            x: 101
            y: 48
        - traceServiceDefinition:
            displayFormat: three_column
            env: datadog.com
            liveSpan: 1h
            service: alerting-cassandra
            showBreakdown: true
            showDistribution: true
            showErrors: true
            showHits: true
            showLatency: false
            showResourceList: false
            sizeFormat: large
            spanName: cassandra.query
            title: 'alerting-cassandra #env:datadog.com'
            titleAlign: center
            titleSize: 13
          widgetLayout:
            height: 38
            width: 66
            x: 33
            y: 21
        - timeseriesDefinition:
            request:
              - formula:
                  - alias: my ff query
                    formulaExpression: my_query_1 + my_query_2
                  - alias: my second ff query
                    formulaExpression: my_query_1 * my_query_2
                    limit:
                      count: 5
                      order: desc
                query:
                  - metricQuery:
                      aggregator: sum
                      dataSource: metrics
                      name: my_query_1
                      query: avg:system.cpu.user{app:general} by {env}
                  - metricQuery:
                      aggregator: sum
                      name: my_query_2
                      query: avg:system.cpu.user{app:general} by {env}
          widgetLayout:
            height: 16
            width: 25
            x: 58
            y: 83
        - timeseriesDefinition:
            request:
              - query:
                  - eventQuery:
                      compute:
                        - aggregation: count
                      dataSource: logs
                      groupBy:
                        - facet: host
                          limit: 10
                          sort:
                            aggregation: avg
                            metric: '@lambda.max_memory_used'
                      indexes:
                        - days-3
                      name: my-query
          widgetLayout:
            height: 16
            width: 28
            x: 29
            y: 83
        - timeseriesDefinition:
            request:
              - query:
                  - processQuery:
                      aggregator: sum
                      dataSource: process
                      isNormalizedCpu: true
                      limit: 10
                      metric: process.stat.cpu.total_pct
                      name: my_process_query
                      sort: asc
                      tagFilters:
                        - some_filter
                      textFilter: abc
          widgetLayout:
            height: 16
            width: 28
            x: 0
            y: 83

Create Dashboard Resource

new Dashboard(name: string, args: DashboardArgs, opts?: CustomResourceOptions);
@overload
def Dashboard(resource_name: str,
              opts: Optional[ResourceOptions] = None,
              dashboard_lists: Optional[Sequence[int]] = None,
              description: Optional[str] = None,
              is_read_only: Optional[bool] = None,
              layout_type: Optional[str] = None,
              notify_lists: Optional[Sequence[str]] = None,
              reflow_type: Optional[str] = None,
              restricted_roles: Optional[Sequence[str]] = None,
              template_variable_presets: Optional[Sequence[DashboardTemplateVariablePresetArgs]] = None,
              template_variables: Optional[Sequence[DashboardTemplateVariableArgs]] = None,
              title: Optional[str] = None,
              url: Optional[str] = None,
              widgets: Optional[Sequence[DashboardWidgetArgs]] = None)
@overload
def Dashboard(resource_name: str,
              args: DashboardArgs,
              opts: Optional[ResourceOptions] = None)
func NewDashboard(ctx *Context, name string, args DashboardArgs, opts ...ResourceOption) (*Dashboard, error)
public Dashboard(string name, DashboardArgs args, CustomResourceOptions? opts = null)
public Dashboard(String name, DashboardArgs args)
public Dashboard(String name, DashboardArgs args, CustomResourceOptions options)
type: datadog:Dashboard
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

name string
The unique name of the resource.
args DashboardArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name str
The unique name of the resource.
args DashboardArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name string
The unique name of the resource.
args DashboardArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args DashboardArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name String
The unique name of the resource.
args DashboardArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

Dashboard Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

The Dashboard resource accepts the following input properties:

LayoutType string

The layout type of the dashboard.

Title string

The title of the dashboard.

DashboardLists List<int>

A list of dashboard lists this dashboard belongs to.

Description string

The description of the dashboard.

IsReadOnly bool

Whether this dashboard is read-only.

Deprecated:

Prefer using restricted_roles to define which roles are required to edit the dashboard.

NotifyLists List<string>

The list of handles for the users to notify when changes are made to this dashboard.

ReflowType string

The reflow type of a new dashboard layout. Set this only when layout type is ordered. If set to fixed, the dashboard expects all widgets to have a layout, and if it's set to auto, widgets should not have layouts.

RestrictedRoles List<string>

UUIDs of roles whose associated users are authorized to edit the dashboard.

TemplateVariablePresets List<DashboardTemplateVariablePresetArgs>

The list of selectable template variable presets for this dashboard.

TemplateVariables List<DashboardTemplateVariableArgs>

The list of template variables for this dashboard.

Url string

The URL of the dashboard.

Widgets List<DashboardWidgetArgs>

The list of widgets to display on the dashboard.

LayoutType string

The layout type of the dashboard.

Title string

The title of the dashboard.

DashboardLists []int

A list of dashboard lists this dashboard belongs to.

Description string

The description of the dashboard.

IsReadOnly bool

Whether this dashboard is read-only.

Deprecated:

Prefer using restricted_roles to define which roles are required to edit the dashboard.

NotifyLists []string

The list of handles for the users to notify when changes are made to this dashboard.

ReflowType string

The reflow type of a new dashboard layout. Set this only when layout type is ordered. If set to fixed, the dashboard expects all widgets to have a layout, and if it's set to auto, widgets should not have layouts.

RestrictedRoles []string

UUIDs of roles whose associated users are authorized to edit the dashboard.

TemplateVariablePresets []DashboardTemplateVariablePresetArgs

The list of selectable template variable presets for this dashboard.

TemplateVariables []DashboardTemplateVariableArgs

The list of template variables for this dashboard.

Url string

The URL of the dashboard.

Widgets []DashboardWidgetArgs

The list of widgets to display on the dashboard.

layoutType String

The layout type of the dashboard.

title String

The title of the dashboard.

dashboardLists List<Integer>

A list of dashboard lists this dashboard belongs to.

description String

The description of the dashboard.

isReadOnly Boolean

Whether this dashboard is read-only.

Deprecated:

Prefer using restricted_roles to define which roles are required to edit the dashboard.

notifyLists List<String>

The list of handles for the users to notify when changes are made to this dashboard.

reflowType String

The reflow type of a new dashboard layout. Set this only when layout type is ordered. If set to fixed, the dashboard expects all widgets to have a layout, and if it's set to auto, widgets should not have layouts.

restrictedRoles List<String>

UUIDs of roles whose associated users are authorized to edit the dashboard.

templateVariablePresets List<DashboardTemplateVariablePresetArgs>

The list of selectable template variable presets for this dashboard.

templateVariables List<DashboardTemplateVariableArgs>

The list of template variables for this dashboard.

url String

The URL of the dashboard.

widgets List<DashboardWidgetArgs>

The list of widgets to display on the dashboard.

layoutType string

The layout type of the dashboard.

title string

The title of the dashboard.

dashboardLists number[]

A list of dashboard lists this dashboard belongs to.

description string

The description of the dashboard.

isReadOnly boolean

Whether this dashboard is read-only.

Deprecated:

Prefer using restricted_roles to define which roles are required to edit the dashboard.

notifyLists string[]

The list of handles for the users to notify when changes are made to this dashboard.

reflowType string

The reflow type of a new dashboard layout. Set this only when layout type is ordered. If set to fixed, the dashboard expects all widgets to have a layout, and if it's set to auto, widgets should not have layouts.

restrictedRoles string[]

UUIDs of roles whose associated users are authorized to edit the dashboard.

templateVariablePresets DashboardTemplateVariablePresetArgs[]

The list of selectable template variable presets for this dashboard.

templateVariables DashboardTemplateVariableArgs[]

The list of template variables for this dashboard.

url string

The URL of the dashboard.

widgets DashboardWidgetArgs[]

The list of widgets to display on the dashboard.

layout_type str

The layout type of the dashboard.

title str

The title of the dashboard.

dashboard_lists Sequence[int]

A list of dashboard lists this dashboard belongs to.

description str

The description of the dashboard.

is_read_only bool

Whether this dashboard is read-only.

Deprecated:

Prefer using restricted_roles to define which roles are required to edit the dashboard.

notify_lists Sequence[str]

The list of handles for the users to notify when changes are made to this dashboard.

reflow_type str

The reflow type of a new dashboard layout. Set this only when layout type is ordered. If set to fixed, the dashboard expects all widgets to have a layout, and if it's set to auto, widgets should not have layouts.

restricted_roles Sequence[str]

UUIDs of roles whose associated users are authorized to edit the dashboard.

template_variable_presets Sequence[DashboardTemplateVariablePresetArgs]

The list of selectable template variable presets for this dashboard.

template_variables Sequence[DashboardTemplateVariableArgs]

The list of template variables for this dashboard.

url str

The URL of the dashboard.

widgets Sequence[DashboardWidgetArgs]

The list of widgets to display on the dashboard.

layoutType String

The layout type of the dashboard.

title String

The title of the dashboard.

dashboardLists List<Number>

A list of dashboard lists this dashboard belongs to.

description String

The description of the dashboard.

isReadOnly Boolean

Whether this dashboard is read-only.

Deprecated:

Prefer using restricted_roles to define which roles are required to edit the dashboard.

notifyLists List<String>

The list of handles for the users to notify when changes are made to this dashboard.

reflowType String

The reflow type of a new dashboard layout. Set this only when layout type is ordered. If set to fixed, the dashboard expects all widgets to have a layout, and if it's set to auto, widgets should not have layouts.

restrictedRoles List<String>

UUIDs of roles whose associated users are authorized to edit the dashboard.

templateVariablePresets List<Property Map>

The list of selectable template variable presets for this dashboard.

templateVariables List<Property Map>

The list of template variables for this dashboard.

url String

The URL of the dashboard.

widgets List<Property Map>

The list of widgets to display on the dashboard.

Outputs

All input properties are implicitly available as output properties. Additionally, the Dashboard resource produces the following output properties:

DashboardListsRemoveds List<int>

A list of dashboard lists this dashboard should be removed from. Internal only.

Id string

The provider-assigned unique ID for this managed resource.

DashboardListsRemoveds []int

A list of dashboard lists this dashboard should be removed from. Internal only.

Id string

The provider-assigned unique ID for this managed resource.

dashboardListsRemoveds List<Integer>

A list of dashboard lists this dashboard should be removed from. Internal only.

id String

The provider-assigned unique ID for this managed resource.

dashboardListsRemoveds number[]

A list of dashboard lists this dashboard should be removed from. Internal only.

id string

The provider-assigned unique ID for this managed resource.

dashboard_lists_removeds Sequence[int]

A list of dashboard lists this dashboard should be removed from. Internal only.

id str

The provider-assigned unique ID for this managed resource.

dashboardListsRemoveds List<Number>

A list of dashboard lists this dashboard should be removed from. Internal only.

id String

The provider-assigned unique ID for this managed resource.

Look up Existing Dashboard Resource

Get an existing Dashboard resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

public static get(name: string, id: Input<ID>, state?: DashboardState, opts?: CustomResourceOptions): Dashboard
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        dashboard_lists: Optional[Sequence[int]] = None,
        dashboard_lists_removeds: Optional[Sequence[int]] = None,
        description: Optional[str] = None,
        is_read_only: Optional[bool] = None,
        layout_type: Optional[str] = None,
        notify_lists: Optional[Sequence[str]] = None,
        reflow_type: Optional[str] = None,
        restricted_roles: Optional[Sequence[str]] = None,
        template_variable_presets: Optional[Sequence[DashboardTemplateVariablePresetArgs]] = None,
        template_variables: Optional[Sequence[DashboardTemplateVariableArgs]] = None,
        title: Optional[str] = None,
        url: Optional[str] = None,
        widgets: Optional[Sequence[DashboardWidgetArgs]] = None) -> Dashboard
func GetDashboard(ctx *Context, name string, id IDInput, state *DashboardState, opts ...ResourceOption) (*Dashboard, error)
public static Dashboard Get(string name, Input<string> id, DashboardState? state, CustomResourceOptions? opts = null)
public static Dashboard get(String name, Output<String> id, DashboardState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
The following state arguments are supported:
DashboardLists List<int>

A list of dashboard lists this dashboard belongs to.

DashboardListsRemoveds List<int>

A list of dashboard lists this dashboard should be removed from. Internal only.

Description string

The description of the dashboard.

IsReadOnly bool

Whether this dashboard is read-only.

Deprecated:

Prefer using restricted_roles to define which roles are required to edit the dashboard.

LayoutType string

The layout type of the dashboard.

NotifyLists List<string>

The list of handles for the users to notify when changes are made to this dashboard.

ReflowType string

The reflow type of a new dashboard layout. Set this only when layout type is ordered. If set to fixed, the dashboard expects all widgets to have a layout, and if it's set to auto, widgets should not have layouts.

RestrictedRoles List<string>

UUIDs of roles whose associated users are authorized to edit the dashboard.

TemplateVariablePresets List<DashboardTemplateVariablePresetArgs>

The list of selectable template variable presets for this dashboard.

TemplateVariables List<DashboardTemplateVariableArgs>

The list of template variables for this dashboard.

Title string

The title of the dashboard.

Url string

The URL of the dashboard.

Widgets List<DashboardWidgetArgs>

The list of widgets to display on the dashboard.

DashboardLists []int

A list of dashboard lists this dashboard belongs to.

DashboardListsRemoveds []int

A list of dashboard lists this dashboard should be removed from. Internal only.

Description string

The description of the dashboard.

IsReadOnly bool

Whether this dashboard is read-only.

Deprecated:

Prefer using restricted_roles to define which roles are required to edit the dashboard.

LayoutType string

The layout type of the dashboard.

NotifyLists []string

The list of handles for the users to notify when changes are made to this dashboard.

ReflowType string

The reflow type of a new dashboard layout. Set this only when layout type is ordered. If set to fixed, the dashboard expects all widgets to have a layout, and if it's set to auto, widgets should not have layouts.

RestrictedRoles []string

UUIDs of roles whose associated users are authorized to edit the dashboard.

TemplateVariablePresets []DashboardTemplateVariablePresetArgs

The list of selectable template variable presets for this dashboard.

TemplateVariables []DashboardTemplateVariableArgs

The list of template variables for this dashboard.

Title string

The title of the dashboard.

Url string

The URL of the dashboard.

Widgets []DashboardWidgetArgs

The list of widgets to display on the dashboard.

dashboardLists List<Integer>

A list of dashboard lists this dashboard belongs to.

dashboardListsRemoveds List<Integer>

A list of dashboard lists this dashboard should be removed from. Internal only.

description String

The description of the dashboard.

isReadOnly Boolean

Whether this dashboard is read-only.

Deprecated:

Prefer using restricted_roles to define which roles are required to edit the dashboard.

layoutType String

The layout type of the dashboard.

notifyLists List<String>

The list of handles for the users to notify when changes are made to this dashboard.

reflowType String

The reflow type of a new dashboard layout. Set this only when layout type is ordered. If set to fixed, the dashboard expects all widgets to have a layout, and if it's set to auto, widgets should not have layouts.

restrictedRoles List<String>

UUIDs of roles whose associated users are authorized to edit the dashboard.

templateVariablePresets List<DashboardTemplateVariablePresetArgs>

The list of selectable template variable presets for this dashboard.

templateVariables List<DashboardTemplateVariableArgs>

The list of template variables for this dashboard.

title String

The title of the dashboard.

url String

The URL of the dashboard.

widgets List<DashboardWidgetArgs>

The list of widgets to display on the dashboard.

dashboardLists number[]

A list of dashboard lists this dashboard belongs to.

dashboardListsRemoveds number[]

A list of dashboard lists this dashboard should be removed from. Internal only.

description string

The description of the dashboard.

isReadOnly boolean

Whether this dashboard is read-only.

Deprecated:

Prefer using restricted_roles to define which roles are required to edit the dashboard.

layoutType string

The layout type of the dashboard.

notifyLists string[]

The list of handles for the users to notify when changes are made to this dashboard.

reflowType string

The reflow type of a new dashboard layout. Set this only when layout type is ordered. If set to fixed, the dashboard expects all widgets to have a layout, and if it's set to auto, widgets should not have layouts.

restrictedRoles string[]

UUIDs of roles whose associated users are authorized to edit the dashboard.

templateVariablePresets DashboardTemplateVariablePresetArgs[]

The list of selectable template variable presets for this dashboard.

templateVariables DashboardTemplateVariableArgs[]

The list of template variables for this dashboard.

title string

The title of the dashboard.

url string

The URL of the dashboard.

widgets DashboardWidgetArgs[]

The list of widgets to display on the dashboard.

dashboard_lists Sequence[int]

A list of dashboard lists this dashboard belongs to.

dashboard_lists_removeds Sequence[int]

A list of dashboard lists this dashboard should be removed from. Internal only.

description str

The description of the dashboard.

is_read_only bool

Whether this dashboard is read-only.

Deprecated:

Prefer using restricted_roles to define which roles are required to edit the dashboard.

layout_type str

The layout type of the dashboard.

notify_lists Sequence[str]

The list of handles for the users to notify when changes are made to this dashboard.

reflow_type str

The reflow type of a new dashboard layout. Set this only when layout type is ordered. If set to fixed, the dashboard expects all widgets to have a layout, and if it's set to auto, widgets should not have layouts.

restricted_roles Sequence[str]

UUIDs of roles whose associated users are authorized to edit the dashboard.

template_variable_presets Sequence[DashboardTemplateVariablePresetArgs]

The list of selectable template variable presets for this dashboard.

template_variables Sequence[DashboardTemplateVariableArgs]

The list of template variables for this dashboard.

title str

The title of the dashboard.

url str

The URL of the dashboard.

widgets Sequence[DashboardWidgetArgs]

The list of widgets to display on the dashboard.

dashboardLists List<Number>

A list of dashboard lists this dashboard belongs to.

dashboardListsRemoveds List<Number>

A list of dashboard lists this dashboard should be removed from. Internal only.

description String

The description of the dashboard.

isReadOnly Boolean

Whether this dashboard is read-only.

Deprecated:

Prefer using restricted_roles to define which roles are required to edit the dashboard.

layoutType String

The layout type of the dashboard.

notifyLists List<String>

The list of handles for the users to notify when changes are made to this dashboard.

reflowType String

The reflow type of a new dashboard layout. Set this only when layout type is ordered. If set to fixed, the dashboard expects all widgets to have a layout, and if it's set to auto, widgets should not have layouts.

restrictedRoles List<String>

UUIDs of roles whose associated users are authorized to edit the dashboard.

templateVariablePresets List<Property Map>

The list of selectable template variable presets for this dashboard.

templateVariables List<Property Map>

The list of template variables for this dashboard.

title String

The title of the dashboard.

url String

The URL of the dashboard.

widgets List<Property Map>

The list of widgets to display on the dashboard.

Supporting Types

DashboardTemplateVariable

Name string
AvailableValues List<string>
Default string
Prefix string
Name string
AvailableValues []string
Default string
Prefix string
name String
availableValues List<String>
default_ String
prefix String
name string
availableValues string[]
default string
prefix string
name str
available_values Sequence[str]
default str
prefix str
name String
availableValues List<String>
default String
prefix String

DashboardTemplateVariablePreset

DashboardTemplateVariablePresetTemplateVariable

Name string
Value string
Name string
Value string
name String
value String
name string
value string
name str
value str
name String
value String

DashboardWidget

AlertGraphDefinition DashboardWidgetAlertGraphDefinition
AlertValueDefinition DashboardWidgetAlertValueDefinition
ChangeDefinition DashboardWidgetChangeDefinition
CheckStatusDefinition DashboardWidgetCheckStatusDefinition
DistributionDefinition DashboardWidgetDistributionDefinition
EventStreamDefinition DashboardWidgetEventStreamDefinition
EventTimelineDefinition DashboardWidgetEventTimelineDefinition
FreeTextDefinition DashboardWidgetFreeTextDefinition
GeomapDefinition DashboardWidgetGeomapDefinition
GroupDefinition DashboardWidgetGroupDefinition
HeatmapDefinition DashboardWidgetHeatmapDefinition
HostmapDefinition DashboardWidgetHostmapDefinition
Id int
IframeDefinition DashboardWidgetIframeDefinition
ImageDefinition DashboardWidgetImageDefinition
ListStreamDefinition DashboardWidgetListStreamDefinition
LogStreamDefinition DashboardWidgetLogStreamDefinition
ManageStatusDefinition DashboardWidgetManageStatusDefinition
NoteDefinition DashboardWidgetNoteDefinition
QueryTableDefinition DashboardWidgetQueryTableDefinition
QueryValueDefinition DashboardWidgetQueryValueDefinition
ScatterplotDefinition DashboardWidgetScatterplotDefinition
ServiceLevelObjectiveDefinition DashboardWidgetServiceLevelObjectiveDefinition
ServicemapDefinition DashboardWidgetServicemapDefinition
SunburstDefinition DashboardWidgetSunburstDefinition
TimeseriesDefinition DashboardWidgetTimeseriesDefinition
ToplistDefinition DashboardWidgetToplistDefinition
TopologyMapDefinition DashboardWidgetTopologyMapDefinition
TraceServiceDefinition DashboardWidgetTraceServiceDefinition
TreemapDefinition DashboardWidgetTreemapDefinition
WidgetLayout DashboardWidgetWidgetLayout
AlertGraphDefinition DashboardWidgetAlertGraphDefinition
AlertValueDefinition DashboardWidgetAlertValueDefinition
ChangeDefinition DashboardWidgetChangeDefinition
CheckStatusDefinition DashboardWidgetCheckStatusDefinition
DistributionDefinition DashboardWidgetDistributionDefinition
EventStreamDefinition DashboardWidgetEventStreamDefinition
EventTimelineDefinition DashboardWidgetEventTimelineDefinition
FreeTextDefinition DashboardWidgetFreeTextDefinition
GeomapDefinition DashboardWidgetGeomapDefinition
GroupDefinition DashboardWidgetGroupDefinition
HeatmapDefinition DashboardWidgetHeatmapDefinition
HostmapDefinition DashboardWidgetHostmapDefinition
Id int
IframeDefinition DashboardWidgetIframeDefinition
ImageDefinition DashboardWidgetImageDefinition
ListStreamDefinition DashboardWidgetListStreamDefinition
LogStreamDefinition DashboardWidgetLogStreamDefinition
ManageStatusDefinition DashboardWidgetManageStatusDefinition
NoteDefinition DashboardWidgetNoteDefinition
QueryTableDefinition DashboardWidgetQueryTableDefinition
QueryValueDefinition DashboardWidgetQueryValueDefinition
ScatterplotDefinition DashboardWidgetScatterplotDefinition
ServiceLevelObjectiveDefinition DashboardWidgetServiceLevelObjectiveDefinition
ServicemapDefinition DashboardWidgetServicemapDefinition
SunburstDefinition DashboardWidgetSunburstDefinition
TimeseriesDefinition DashboardWidgetTimeseriesDefinition
ToplistDefinition DashboardWidgetToplistDefinition
TopologyMapDefinition DashboardWidgetTopologyMapDefinition
TraceServiceDefinition DashboardWidgetTraceServiceDefinition
TreemapDefinition DashboardWidgetTreemapDefinition
WidgetLayout DashboardWidgetWidgetLayout
alertGraphDefinition DashboardWidgetAlertGraphDefinition
alertValueDefinition DashboardWidgetAlertValueDefinition
changeDefinition DashboardWidgetChangeDefinition
checkStatusDefinition DashboardWidgetCheckStatusDefinition
distributionDefinition DashboardWidgetDistributionDefinition
eventStreamDefinition DashboardWidgetEventStreamDefinition
eventTimelineDefinition DashboardWidgetEventTimelineDefinition
freeTextDefinition DashboardWidgetFreeTextDefinition
geomapDefinition DashboardWidgetGeomapDefinition
groupDefinition DashboardWidgetGroupDefinition
heatmapDefinition DashboardWidgetHeatmapDefinition
hostmapDefinition DashboardWidgetHostmapDefinition
id Integer
iframeDefinition DashboardWidgetIframeDefinition
imageDefinition DashboardWidgetImageDefinition
listStreamDefinition DashboardWidgetListStreamDefinition
logStreamDefinition DashboardWidgetLogStreamDefinition
manageStatusDefinition DashboardWidgetManageStatusDefinition
noteDefinition DashboardWidgetNoteDefinition
queryTableDefinition DashboardWidgetQueryTableDefinition
queryValueDefinition DashboardWidgetQueryValueDefinition
scatterplotDefinition DashboardWidgetScatterplotDefinition
serviceLevelObjectiveDefinition DashboardWidgetServiceLevelObjectiveDefinition
servicemapDefinition DashboardWidgetServicemapDefinition
sunburstDefinition DashboardWidgetSunburstDefinition
timeseriesDefinition DashboardWidgetTimeseriesDefinition
toplistDefinition DashboardWidgetToplistDefinition
topologyMapDefinition DashboardWidgetTopologyMapDefinition
traceServiceDefinition DashboardWidgetTraceServiceDefinition
treemapDefinition DashboardWidgetTreemapDefinition
widgetLayout DashboardWidgetWidgetLayout
alertGraphDefinition DashboardWidgetAlertGraphDefinition
alertValueDefinition DashboardWidgetAlertValueDefinition
changeDefinition DashboardWidgetChangeDefinition
checkStatusDefinition DashboardWidgetCheckStatusDefinition
distributionDefinition DashboardWidgetDistributionDefinition
eventStreamDefinition DashboardWidgetEventStreamDefinition
eventTimelineDefinition DashboardWidgetEventTimelineDefinition
freeTextDefinition DashboardWidgetFreeTextDefinition
geomapDefinition DashboardWidgetGeomapDefinition
groupDefinition DashboardWidgetGroupDefinition
heatmapDefinition DashboardWidgetHeatmapDefinition
hostmapDefinition DashboardWidgetHostmapDefinition
id number
iframeDefinition DashboardWidgetIframeDefinition
imageDefinition DashboardWidgetImageDefinition
listStreamDefinition DashboardWidgetListStreamDefinition
logStreamDefinition DashboardWidgetLogStreamDefinition
manageStatusDefinition DashboardWidgetManageStatusDefinition
noteDefinition DashboardWidgetNoteDefinition
queryTableDefinition DashboardWidgetQueryTableDefinition
queryValueDefinition DashboardWidgetQueryValueDefinition
scatterplotDefinition DashboardWidgetScatterplotDefinition
serviceLevelObjectiveDefinition DashboardWidgetServiceLevelObjectiveDefinition
servicemapDefinition DashboardWidgetServicemapDefinition
sunburstDefinition DashboardWidgetSunburstDefinition
timeseriesDefinition DashboardWidgetTimeseriesDefinition
toplistDefinition DashboardWidgetToplistDefinition
topologyMapDefinition DashboardWidgetTopologyMapDefinition
traceServiceDefinition DashboardWidgetTraceServiceDefinition
treemapDefinition DashboardWidgetTreemapDefinition
widgetLayout DashboardWidgetWidgetLayout
alert_graph_definition DashboardWidgetAlertGraphDefinition
alert_value_definition DashboardWidgetAlertValueDefinition
change_definition DashboardWidgetChangeDefinition
check_status_definition DashboardWidgetCheckStatusDefinition
distribution_definition DashboardWidgetDistributionDefinition
event_stream_definition DashboardWidgetEventStreamDefinition
event_timeline_definition DashboardWidgetEventTimelineDefinition
free_text_definition DashboardWidgetFreeTextDefinition
geomap_definition DashboardWidgetGeomapDefinition
group_definition DashboardWidgetGroupDefinition
heatmap_definition DashboardWidgetHeatmapDefinition
hostmap_definition DashboardWidgetHostmapDefinition
id int
iframe_definition DashboardWidgetIframeDefinition
image_definition DashboardWidgetImageDefinition
list_stream_definition DashboardWidgetListStreamDefinition
log_stream_definition DashboardWidgetLogStreamDefinition
manage_status_definition DashboardWidgetManageStatusDefinition
note_definition DashboardWidgetNoteDefinition
query_table_definition DashboardWidgetQueryTableDefinition
query_value_definition DashboardWidgetQueryValueDefinition
scatterplot_definition DashboardWidgetScatterplotDefinition
service_level_objective_definition DashboardWidgetServiceLevelObjectiveDefinition
servicemap_definition DashboardWidgetServicemapDefinition
sunburst_definition DashboardWidgetSunburstDefinition
timeseries_definition DashboardWidgetTimeseriesDefinition
toplist_definition DashboardWidgetToplistDefinition
topology_map_definition DashboardWidgetTopologyMapDefinition
trace_service_definition DashboardWidgetTraceServiceDefinition
treemap_definition DashboardWidgetTreemapDefinition
widget_layout DashboardWidgetWidgetLayout
alertGraphDefinition Property Map
alertValueDefinition Property Map
changeDefinition Property Map
checkStatusDefinition Property Map
distributionDefinition Property Map
eventStreamDefinition Property Map
eventTimelineDefinition Property Map
freeTextDefinition Property Map
geomapDefinition Property Map
groupDefinition Property Map
heatmapDefinition Property Map
hostmapDefinition Property Map
id Number
iframeDefinition Property Map
imageDefinition Property Map
listStreamDefinition Property Map
logStreamDefinition Property Map
manageStatusDefinition Property Map
noteDefinition Property Map
queryTableDefinition Property Map
queryValueDefinition Property Map
scatterplotDefinition Property Map
serviceLevelObjectiveDefinition Property Map
servicemapDefinition Property Map
sunburstDefinition Property Map
timeseriesDefinition Property Map
toplistDefinition Property Map
topologyMapDefinition Property Map
traceServiceDefinition Property Map
treemapDefinition Property Map
widgetLayout Property Map

DashboardWidgetAlertGraphDefinition

AlertId string
VizType string
LiveSpan string
Title string
TitleAlign string
TitleSize string
AlertId string
VizType string
LiveSpan string
Title string
TitleAlign string
TitleSize string
alertId String
vizType String
liveSpan String
title String
titleAlign String
titleSize String
alertId string
vizType string
liveSpan string
title string
titleAlign string
titleSize string
alertId String
vizType String
liveSpan String
title String
titleAlign String
titleSize String

DashboardWidgetAlertValueDefinition

AlertId string
Precision int
TextAlign string
Title string
TitleAlign string
TitleSize string
Unit string
AlertId string
Precision int
TextAlign string
Title string
TitleAlign string
TitleSize string
Unit string
alertId String
precision Integer
textAlign String
title String
titleAlign String
titleSize String
unit String
alertId string
precision number
textAlign string
title string
titleAlign string
titleSize string
unit string
alertId String
precision Number
textAlign String
title String
titleAlign String
titleSize String
unit String

DashboardWidgetChangeDefinition

IsHidden bool
Label string
Link string
OverrideLabel string
IsHidden bool
Label string
Link string
OverrideLabel string
isHidden Boolean
label String
link String
overrideLabel String
isHidden boolean
label string
link string
overrideLabel string
isHidden Boolean
label String
link String
overrideLabel String

DashboardWidgetChangeDefinitionRequest

DashboardWidgetChangeDefinitionRequestApmQuery

DashboardWidgetChangeDefinitionRequestApmQueryComputeQuery

Aggregation string
Facet string
Interval int
Aggregation string
Facet string
Interval int
aggregation String
facet String
interval Integer
aggregation string
facet string
interval number
aggregation String
facet String
interval Number

DashboardWidgetChangeDefinitionRequestApmQueryGroupBy

DashboardWidgetChangeDefinitionRequestApmQueryGroupBySortQuery

Aggregation string
Order string
Facet string
Aggregation string
Order string
Facet string
aggregation String
order String
facet String
aggregation string
order string
facet string
aggregation String
order String
facet String

DashboardWidgetChangeDefinitionRequestApmQueryMultiCompute

Aggregation string
Facet string
Interval int
Aggregation string
Facet string
Interval int
aggregation String
facet String
interval Integer
aggregation string
facet string
interval number
aggregation String
facet String
interval Number

DashboardWidgetChangeDefinitionRequestFormula

DashboardWidgetChangeDefinitionRequestFormulaConditionalFormat

Comparator string
Palette string
Value double
CustomBgColor string
CustomFgColor string
HideValue bool
ImageUrl string
Metric string
Timeframe string
Comparator string
Palette string
Value float64
CustomBgColor string
CustomFgColor string
HideValue bool
ImageUrl string
Metric string
Timeframe string
comparator String
palette String
value Double
customBgColor String
customFgColor String
hideValue Boolean
imageUrl String
metric String
timeframe String
comparator string
palette string
value number
customBgColor string
customFgColor string
hideValue boolean
imageUrl string
metric string
timeframe string
comparator String
palette String
value Number
customBgColor String
customFgColor String
hideValue Boolean
imageUrl String
metric String
timeframe String

DashboardWidgetChangeDefinitionRequestFormulaLimit

Count int
Order string
Count int
Order string
count Integer
order String
count number
order string
count int
order str
count Number
order String

DashboardWidgetChangeDefinitionRequestLogQuery

DashboardWidgetChangeDefinitionRequestLogQueryComputeQuery

Aggregation string
Facet string
Interval int
Aggregation string
Facet string
Interval int
aggregation String
facet String
interval Integer
aggregation string
facet string
interval number